/* Composition from shadcn/ui dashboard-01. Original compiled CSS remains authoritative. */
:root{--gap:16px;--fs:14px;--measure:68ch;--dur:160ms;--ease:cubic-bezier(.2,.8,.2,1);font-family:Arial,"PingFang SC","WenQuanYi Zen Hei","Microsoft YaHei",sans-serif}body{font-family:inherit;font-size:var(--fs)}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}svg{width:18px;height:18px;flex-shrink:0}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--foreground);outline-offset:3px}[hidden]{display:none!important}.muted{color:var(--muted-foreground)}h1,h2,h3,p{margin:0}h1{font-size:26px;line-height:1.4;font-weight:650;letter-spacing:-.6px}h2{font-size:16px;font-weight:600}h3{font-size:14px;font-weight:600}.brand{display:flex;align-items:center;gap:12px;padding:22px 14px 32px}.brand strong{font-size:20px;letter-spacing:-.6px}.brand .muted{display:block;font-size:12px;margin-top:2px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;background:var(--foreground);color:var(--background);width:34px;height:34px;border-radius:calc(var(--radius) - 2px)}nav{padding:0 8px}.nav-caption{display:block;font-size:12px;padding:8px 10px}nav button[data-view]{height:42px;margin:4px 0;padding:10px}.nav-count{margin-left:auto;font-size:12px;color:var(--muted-foreground)}.sidebar-foot{margin-top:auto;padding:16px 10px}.sidebar-note{padding:16px 10px 24px;font-size:12px;line-height:1.8}.sidebar-note strong{font-weight:500}.profile{display:flex;gap:10px;width:100%;align-items:center;text-align:left;padding:10px;border-radius:calc(var(--radius) - 2px)}.profile:hover{background:var(--muted)}.profile strong,.profile small{display:block;font-size:12px}.profile-avatar{background:var(--muted);border:1px solid var(--border);width:34px;height:34px;display:grid;place-items:center;border-radius:calc(var(--radius) - 2px)}.profile>svg{margin-left:auto;width:14px}.app-header{height:56px;display:flex;justify-content:space-between;align-items:center;padding:0 24px;border-bottom:1px solid var(--border)}.header-left,.header-right{display:flex;align-items:center;gap:16px}.header-right{font-size:12px}.header-rule{height:16px;border-left:1px solid var(--border)}.icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:calc(var(--radius) - 2px);background:transparent}.icon-button:hover{background:var(--muted)}.workspace-content{padding:28px 24px 20px;display:flex;flex-direction:column;gap:24px;min-width:0}.page-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-title p{margin-top:6px;font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);background:var(--background);height:36px;padding:0 12px;border-radius:calc(var(--radius) - 2px);font-size:12px;white-space:nowrap;font-weight:500}.button:hover{background:var(--muted)}.button svg{width:14px;height:14px}.primary{background:var(--foreground);color:var(--background)}.primary:hover{opacity:.85;background:var(--foreground)}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--gap)}.metrics [data-slot=card]{gap:22px;box-shadow:0 1px 2px #00000008}.metrics [data-slot=card-header],.metrics [data-slot=card-footer]{padding-left:20px;padding-right:20px}.metrics [data-slot=card-description]{font-size:12px}.metrics [data-slot=card-title]{font-size:30px;line-height:1.3}.metrics [data-slot=card-footer]{font-size:12px}.metric-icon{color:var(--muted-foreground)}.overview-panel{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:22px 24px;border:1px solid var(--border);border-radius:calc(var(--radius) + 4px)}.overview-panel p{font-size:12px;margin-top:4px}.distribution{display:flex;flex-direction:column;gap:10px;flex:1;max-width:580px}.distribution-bar{height:8px;display:flex;gap:3px;overflow:hidden;border-radius:999px;background:var(--muted)}.distribution-bar span{height:100%;background:var(--foreground);min-width:3px;border-radius:999px}.distribution-bar .segment-attention{opacity:.42}.distribution-bar .segment-pending{opacity:.14}.legend{display:flex;gap:20px;flex-wrap:wrap;font-size:12px}.legend span{display:flex;align-items:center;gap:6px}.dot{width:6px;height:6px;border-radius:999px;background:var(--foreground);display:inline-block}.dot.attention{opacity:.42}.dot.pending{opacity:.14}.projects{min-width:0}.projects-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.projects-heading p{font-size:12px;margin-top:4px}.badge{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border:1px solid var(--border);border-radius:999px;padding:3px 9px;font-size:12px;line-height:18px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0 16px}.tabs{display:flex;padding:3px;background:var(--muted);border-radius:calc(var(--radius) - 2px);gap:2px}.tabs button{height:30px;padding:0 14px;color:var(--muted-foreground);border-radius:calc(var(--radius) - 4px);font-size:12px}.tabs button[aria-pressed=true]{background:var(--background);color:var(--foreground);box-shadow:0 1px 2px #0000000d}.filter-inputs{display:flex;gap:8px;min-width:0}.search{display:flex;gap:8px;align-items:center;border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);padding:0 10px;width:236px;min-width:0;height:36px}.search svg{width:14px;color:var(--muted-foreground)}input{min-width:0;width:100%;background:transparent}input::placeholder{color:var(--muted-foreground)}select{height:36px;max-width:130px;background:var(--background);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);padding:0 10px;font-size:12px}.table-scroll{border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);overflow:auto}table{border-collapse:collapse;width:100%;table-layout:fixed}th{text-align:left;background:var(--muted);font-weight:500;color:var(--muted-foreground);font-size:12px;height:42px;padding:0 16px}th:first-child{width:36%}th:nth-child(2){width:20%}th:nth-child(3){width:20%}th:nth-child(4){width:19%}th:last-child{width:5%}td{height:74px;padding:12px 16px;border-top:1px solid var(--border);font-size:12px;vertical-align:middle}tbody tr:hover{background:var(--muted)}.project-name{display:flex;gap:12px;align-items:center;min-width:0}.project-avatar{width:34px;height:34px;flex-shrink:0;display:grid;place-items:center;background:var(--muted);border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);font-weight:600;font-size:12px;overflow:hidden}.project-avatar img{width:100%;height:100%;object-fit:cover}.project-identity{min-width:0}.project-title{display:block;font-weight:600;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;padding:2px 0}.project-title:hover{text-decoration:underline}.project-subtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:2px}.status-note,.date-note{font-size:12px;margin-top:5px}.status-note{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-footer{display:flex;align-items:center;justify-content:space-between;margin-top:16px;font-size:12px;gap:12px}.pagination{display:flex;gap:8px}.page-footer{display:flex;justify-content:space-between;gap:16px;font-size:12px;padding-top:4px}.empty{text-align:center;padding:64px 16px;border:1px solid var(--border);border-radius:calc(var(--radius) + 4px)}.empty p{font-size:12px;margin:8px 0 20px}.error-banner{border:1px solid var(--border);border-radius:var(--radius);padding:12px;font-size:14px}dialog{background:var(--background);color:var(--foreground);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);padding:24px;margin:auto;width:min(580px,calc(100vw - 32px));max-height:85vh;overflow:auto;box-shadow:0 20px 60px #0003}dialog::backdrop{background:#0006}.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.dialog-head h2{font-size:20px;margin-top:4px}.dialog-head p{font-size:12px}.account-detail{padding:16px 0;border-top:1px solid var(--border)}.account-detail-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.account-detail p{font-size:14px;white-space:pre-line;overflow-wrap:anywhere;line-height:1.7}.account-detail .muted{font-size:12px;margin-top:8px}#login{max-width:400px}#login h1{font-size:24px;margin:20px 0 8px}#login p{font-size:14px}#login label{display:block;font-size:14px;font-weight:500;margin-top:20px}#login input{display:block;height:40px;border:1px solid var(--border);padding:0 12px;border-radius:calc(var(--radius) - 2px);margin-top:8px}#login .button{width:100%;margin-top:20px;height:40px;font-size:14px}#login-error{margin-top:12px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 20px;background:var(--foreground);color:var(--background);border-radius:var(--radius);z-index:60;font-size:14px;max-width:90vw}.sidebar-collapsed [data-slot=sidebar]{display:none}.sidebar-collapsed main{margin-left:8px!important}.sidebar-collapsed [data-slot=sidebar-wrapper]{padding-left:0}main{min-width:0}#sidebar-backdrop{position:fixed;inset:0;background:#0006;z-index:19}.dark{color-scheme:dark}@media(min-width:768px){[data-slot=sidebar-wrapper]{--sidebar-width:248px!important}}@media(max-width:1100px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.toolbar{align-items:flex-start;flex-direction:column}.filter-inputs{width:100%}.search{flex:1}.overview-panel{align-items:flex-start;flex-direction:column;gap:18px}.distribution{width:100%;max-width:none}}@media(max-width:767px){.workspace-content{padding:24px 16px 16px;gap:22px}.app-header{padding:0 16px}.header-right>span{display:none}.page-title{align-items:flex-start}.page-title h1{font-size:24px}.page-title p{max-width:230px;line-height:1.6}.page-title .button span{display:none}.page-title .button{width:36px;padding:0}.metrics{gap:12px}.metrics [data-slot=card]{padding:18px 0;gap:16px}.metrics [data-slot=card-header],.metrics [data-slot=card-footer]{padding-left:14px;padding-right:14px}.metrics [data-slot=card-title]{font-size:26px}.metrics [data-slot=card-footer]>.text-muted-foreground{display:none}.metric-icon svg{width:14px}.overview-panel{padding:18px}.legend{gap:12px}.projects-heading p{max-width:220px;line-height:1.6}.toolbar{gap:12px}.tabs{width:100%}.tabs button{flex:1;height:34px}.search{width:auto}.filter-inputs{gap:8px}select{width:112px}.account-col,td.account-col{display:none}th:first-child{width:49%}th:nth-child(2){width:28%}th:nth-child(4){width:23%}th:last-child,td:last-child{display:none}th,td{padding:10px}.project-avatar{display:none}.project-title{font-size:12px}.project-subtitle{font-size:11px}.status-note{display:none}.status-badge{font-size:11px;padding:2px 6px}.date-note{font-size:11px}td{height:72px}.table-footer{align-items:flex-start}.table-footer .button{padding:0 10px}.page-footer{flex-direction:column;gap:4px}.mobile-open [data-slot=sidebar]{display:block;position:relative;z-index:20}.mobile-open [data-slot=sidebar-container]{display:flex;width:248px}.mobile-open [data-slot=sidebar-gap]{width:0}.sidebar-collapsed main{margin-left:0!important}}@media(prefers-reduced-motion:reduce){*{transition-duration:0ms!important;animation:none!important}}
/* Preserve reference theme semantics on the extracted app shell. */
body,main{color:var(--foreground)}:root:not(.dark){--muted-foreground:lab(45% 0 0)}.metrics [data-slot=card]{background-image:linear-gradient(to top,color-mix(in oklab,var(--primary) 5%,transparent),var(--card))}.dark .metrics [data-slot=card]{background-image:none}
.project-title{min-height:28px}
.detail-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.danger{color:var(--destructive);border-color:var(--destructive)}.delete-confirm h3{font-size:16px;line-height:1.7}.delete-confirm p{margin-top:12px;line-height:1.8;font-size:14px}.dark .danger{color:#ff9999;border-color:#ff9999}#delete-error{font-weight:500}
.rename-form label{display:block;font-size:14px;font-weight:500;margin-bottom:8px}.rename-form input{display:block;width:100%;height:40px;border:1px solid var(--border);border-radius:calc(var(--radius) - 2px);padding:0 12px;font-size:14px}.rename-form p{font-size:12px;line-height:1.8;margin-top:10px}.rename-form .detail-actions{flex-wrap:wrap}
