@font-face{font-family:LINE Seed Sans TH;src:url(/fonts/LINESeedSansTH-Regular.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:LINE Seed Sans TH;src:url(/fonts/LINESeedSansTH-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:LINE Seed Sans TH;src:url(/fonts/LINESeedSansTH-ExtraBold.otf) format("opentype");font-weight:800;font-style:normal;font-display:swap}:root{font-family:LINE Seed Sans TH,system-ui,sans-serif;color:#171816;background:#efefec;font-synthesis:none;--ink: #171816;--muted: #747772;--faint: #9b9e99;--line: #e2e3df;--line-strong: #d6d7d2;--canvas: #f2f2ef;--paper: #fbfbf9;--soft: #f5f5f2;--sidebar: #f7f7f4;--radius-sm: 9px;--radius: 13px;--radius-lg: 18px}*{box-sizing:border-box}html{background:var(--canvas)}body{margin:0;min-width:320px;min-height:100vh;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{color:inherit}button:focus:not(:focus-visible){outline:none}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #777a74;outline-offset:2px}.app-shell{min-height:100vh;display:flex;background:var(--canvas)}.workspace{flex:1;min-width:0;margin-left:244px;transition:margin-left .24s ease}.sidebar.compact+.workspace{margin-left:78px}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;background:var(--sidebar);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:18px 14px 14px;z-index:20;transition:width .24s ease}.sidebar.compact{width:78px;align-items:center;padding-inline:11px}.brand-row{min-height:44px;display:flex;align-items:center;gap:11px;padding:2px 5px 16px;border-bottom:1px solid var(--line)}.brand-mark{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--ink);color:#fff;flex:0 0 auto}.brand-row>div:nth-child(2){display:flex;flex-direction:column;line-height:1.05;min-width:0}.brand-row strong{font-size:13px;letter-spacing:.08em;font-weight:800}.brand-row span{margin-top:5px;color:var(--faint);font-size:10px}.sidebar-toggle{margin-left:auto}.compact .brand-row{width:100%;justify-content:center;padding-inline:0}.compact .sidebar-toggle{position:absolute;left:55px;top:48px;background:var(--paper);box-shadow:0 1px 5px #00000014;width:24px;height:24px}.workspace-switch{margin:15px 0 19px;display:flex;align-items:center;gap:9px;padding:9px;border:1px solid var(--line);border-radius:12px;background:#ffffff9e}.workspace-avatar{width:31px;height:31px;border-radius:9px;display:grid;place-items:center;background:#e8e8e4;border:1px solid #deded9;font-size:11px;font-weight:800}.workspace-switch>div:nth-child(2){display:flex;flex-direction:column;flex:1;min-width:0}.workspace-switch strong{font-size:12px}.workspace-switch span{color:var(--faint);font-size:10px;margin-top:2px}.main-nav{display:flex;flex-direction:column;gap:3px;flex:1}.nav-label{color:#a2a49f;font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:4px 10px 7px}.nav-label-spaced{margin-top:16px}.main-nav button{border:0;background:transparent;min-height:40px;border-radius:9px;display:flex;align-items:center;gap:11px;padding:0 10px;color:#696c67;cursor:pointer;text-align:left;transition:.18s ease}.main-nav button:hover{background:#ecece8;color:var(--ink)}.main-nav button.active{background:var(--ink);color:#fff}.main-nav button span{font-size:13px;flex:1}.main-nav button em{min-width:21px;height:20px;border-radius:7px;background:#ffffff21;display:grid;place-items:center;font-size:10px;font-style:normal}.compact .main-nav{width:100%;padding-top:28px}.compact .nav-label,.compact .main-nav button span,.compact .main-nav button em{display:none}.compact .main-nav button{justify-content:center;padding:0}.sidebar-footer{border-top:1px solid var(--line);padding:15px 7px 0}.usage-line{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;margin-bottom:8px}.usage-line strong{color:var(--ink)}.sidebar-footer .progress{margin-bottom:12px}.sidebar-footer button{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px;padding:7px 0;cursor:pointer}.topbar{height:66px;position:sticky;top:0;z-index:15;padding:0 28px;display:flex;align-items:center;justify-content:space-between;background:#fbfbf9e6;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--faint);white-space:nowrap}.breadcrumb strong{color:#555852;font-weight:700}.top-actions{display:flex;align-items:center;gap:8px}.viewer-switch{height:40px;min-width:154px;position:relative;display:flex;align-items:center;gap:8px;padding:0 9px;border:1px solid var(--line);border-radius:10px;background:var(--paper);cursor:pointer}.viewer-switch:hover{border-color:#c8cac4;background:#f7f7f4}.viewer-switch select{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.viewer-avatar,.member-avatar{width:27px;height:27px;flex:0 0 auto;border-radius:8px;display:grid;place-items:center;background:#e7e7e3;border:1px solid #d9dad5;color:#555852;font-size:10px;font-weight:800}.viewer-avatar.admin{background:var(--ink);color:#fff;border-color:var(--ink)}.viewer-copy{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.1}.viewer-copy small{color:var(--faint);font-size:8px}.viewer-copy strong{margin-top:3px;font-size:10px;white-space:nowrap}.search{height:36px;width:min(32vw,360px);border:1px solid var(--line);border-radius:9px;background:#f7f7f4;display:flex;align-items:center;padding:0 10px;gap:8px;color:var(--faint)}.search:focus-within{background:#fff;border-color:#babdb6;box-shadow:0 0 0 3px #1414140d}.search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:11px}.search input::placeholder{color:#a0a39e}.search kbd{border:1px solid var(--line);border-radius:5px;padding:2px 5px;color:#9b9e99;background:#fff;font-size:9px}.icon-button{border:0;background:transparent;width:34px;height:34px;display:grid;place-items:center;border-radius:9px;cursor:pointer;color:#666963}.icon-button:hover{background:#ecece8;color:var(--ink)}.primary-button,.secondary-button{height:36px;border-radius:9px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-size:11px;font-weight:700;white-space:nowrap}.primary-button{background:var(--ink);color:#fff;border:1px solid var(--ink)}.primary-button:hover{background:#30312e}.secondary-button{background:var(--paper);border:1px solid var(--line-strong);color:#4c4f4a}.secondary-button:hover{background:#f1f1ed}.content{padding:28px;max-width:1540px;margin:0 auto}.page-stack{display:flex;flex-direction:column;gap:20px;animation:page-in .32s ease}@keyframes page-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding:3px 0 2px}.page-heading h1{margin:5px 0 3px;font-size:clamp(25px,2vw,34px);letter-spacing:-.035em;line-height:1.18;font-weight:700}.page-heading p{margin:0;color:var(--muted);font-size:12px}.eyebrow{color:#8c8f89;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.stat-card{min-height:132px;position:relative;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:17px;display:grid;grid-template-columns:1fr auto;align-content:start}.stat-icon{grid-column:2;grid-row:1 / span 2;width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:#efefeb}.stat-icon.amber{background:#f4eddf;color:#826733}.stat-icon.violet{background:#ece9f4;color:#695c8e}.stat-icon.green{background:#e4eee8;color:#416c53}.stat-card>span{color:var(--muted);font-size:11px}.stat-card>strong{font-size:28px;letter-spacing:-.04em;line-height:1.25}.stat-card small{grid-column:1 / -1;border-top:1px solid #ebebe8;padding-top:10px;margin-top:9px;color:#8b8e88;font-size:9.5px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);gap:12px}.lower-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:12px}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius)}.panel-header{min-height:66px;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid #e8e8e4}.panel-header h2{margin:0;font-size:14px;letter-spacing:-.01em}.panel-header p{margin:3px 0 0;font-size:10px;color:var(--faint)}.text-button{border:0;background:transparent;display:inline-flex;align-items:center;gap:5px;cursor:pointer;color:#60635e;font-size:10px}.project-list{padding:3px 7px 7px}.project-row{width:100%;border:0;border-bottom:1px solid #e9e9e5;background:transparent;min-height:76px;padding:10px;display:grid;grid-template-columns:40px minmax(140px,1.1fr) minmax(120px,.8fr) 100px auto 20px;gap:12px;align-items:center;text-align:left;cursor:pointer;border-radius:9px}.project-row:last-child{border-bottom:0}.project-row:hover{background:#f3f3ef}.project-monogram{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:#e7e7e3;border:1px solid #dbdcd7;font-weight:800;font-size:12px}.project-main,.project-due{display:flex;flex-direction:column;min-width:0}.project-main strong{font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-main span,.project-due span{color:var(--faint);font-size:9.5px;margin-top:4px}.project-due strong{font-size:10px;margin-top:4px}.project-progress>div{display:flex;justify-content:space-between;font-size:9px;color:var(--faint);margin-bottom:7px}.project-progress>div strong{color:#555852}.progress{height:4px;background:#e4e4e0;border-radius:10px;overflow:hidden}.progress span{height:100%;background:#252622;display:block;border-radius:inherit}.status-badge{min-height:24px;padding:4px 8px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;white-space:nowrap;border:1px solid transparent}.status-on-track,.status-อนุมัติแล้ว{color:#3d6d4e;background:#e6f0e9;border-color:#d8e7dd}.status-review,.status-ตรวจแบบ,.status-รอลูกค้า{color:#675884;background:#eeebf5;border-color:#e3deef}.status-at-risk,.status-กำลังแก้{color:#8b6430;background:#f5ecdd;border-color:#ebddc6}.status-กำลังเขียน{color:#4d657f;background:#e8eef3;border-color:#dbe4ec}.priority-panel{padding-bottom:12px}.priority-list{padding:4px 15px}.priority-item{min-height:59px;display:grid;grid-template-columns:8px 1fr auto;gap:10px;align-items:center;border-bottom:1px solid #e9e9e5}.priority-item:last-child{border-bottom:0}.priority-dot{width:6px;height:6px;border-radius:50%;background:#b5b7b1}.priority-dot.high{background:#b46a58}.priority-dot.medium{background:#c39a53}.priority-item>div{display:flex;flex-direction:column;min-width:0}.priority-item strong{font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.priority-item span:not(.priority-dot),.priority-item time{color:var(--faint);font-size:9px}.priority-item time{white-space:nowrap}.wide-ghost-button{min-height:34px;border:1px solid var(--line);background:#f7f7f4;border-radius:9px;margin:8px 14px 0;width:calc(100% - 28px);display:flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;color:#62655f;font-size:10px}.wide-ghost-button:hover{color:var(--ink);background:#efefeb}.schedule-list{padding:5px 17px 14px}.schedule-list>div{min-height:58px;display:grid;grid-template-columns:34px 3px 1fr;gap:13px;align-items:center}.schedule-list time{display:flex;flex-direction:column;align-items:center;line-height:1.1}.schedule-list time strong{font-size:15px}.schedule-list time span{font-size:9px;color:var(--faint)}.schedule-line{width:2px;height:28px;border-radius:3px;background:#bbbdb8}.schedule-line.black{background:var(--ink)}.schedule-list>div>div{display:flex;flex-direction:column}.schedule-list>div>div strong{font-size:10.5px}.schedule-list>div>div span{font-size:9px;color:var(--faint);margin-top:3px}.week-chip{background:#f0f0ec;border-radius:7px;padding:5px 8px;color:var(--muted);font-size:9px}.activity-list{padding:5px 17px 14px}.activity-list>div{min-height:58px;display:flex;align-items:center;gap:11px}.activity-icon{width:31px;height:31px;flex:0 0 auto;display:grid;place-items:center;border-radius:9px;background:#efefeb;color:#686b65}.activity-icon.success{background:#e6f0e9;color:#3d6d4e}.activity-icon.warning{background:#f5ecdd;color:#8b6430}.activity-list>div>div{display:flex;flex-direction:column}.activity-list strong{font-size:10.5px}.activity-list span{font-size:9px;color:var(--faint);margin-top:3px}.view-toolbar{height:47px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.segmented{display:flex;align-items:center;gap:4px}.segmented button{height:31px;border:0;border-radius:8px;padding:0 11px;background:transparent;color:var(--muted);display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:10px}.segmented button.active{background:var(--paper);color:var(--ink);box-shadow:0 0 0 1px var(--line)}.segmented button:disabled{opacity:.42;cursor:not-allowed}.toolbar-meta{color:var(--faint);font-size:10px}.toolbar-meta strong{color:var(--ink)}.owner-select{margin-left:auto;display:flex;align-items:center;gap:7px;color:var(--muted);font-size:9px}.owner-select select{height:30px;min-width:108px;padding:0 25px 0 9px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font-size:10px}.privacy-strip{min-height:38px;display:flex;align-items:center;gap:8px;border:1px solid #deded9;border-radius:10px;padding:8px 11px;background:#eeeee9;color:#5f625c;font-size:10px}.privacy-strip svg{color:var(--ink);flex:0 0 auto}.project-card-grid{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:12px}.project-card{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);text-align:left;padding:15px;cursor:pointer;min-width:0;transition:.2s ease}.project-card:hover{transform:translateY(-2px);border-color:#c9cac4;box-shadow:0 8px 24px #1e1f1c0f}.project-card-top,.project-card-progress>div,.project-card-footer{display:flex;align-items:center;justify-content:space-between}.project-code{font-size:9px;font-weight:700;letter-spacing:.08em;color:var(--muted)}.project-card-visual{height:105px;margin:14px 0 15px;border-radius:10px;background:#edede9;display:flex;align-items:center;justify-content:space-between;padding:18px;color:#6c6f69;border:1px solid #e3e3df}.project-card-visual span{font-size:27px;font-weight:800;color:#aaaca6}.project-card h2{font-size:14px;margin:0;letter-spacing:-.015em}.project-card>p{margin:4px 0 15px;font-size:10px;color:var(--faint)}.project-card-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:11px 0;border-top:1px solid #e9e9e5;border-bottom:1px solid #e9e9e5}.project-card-meta>div{display:flex;flex-direction:column}.project-card-meta span,.project-card-progress span{font-size:9px;color:var(--faint)}.project-card-meta strong{font-size:10px;margin-top:3px}.project-card-progress{padding:12px 0}.project-card-progress strong{font-size:10px}.project-card-progress .progress{margin-top:7px}.project-card-footer{color:var(--muted);font-size:9px}.project-card-footer span{display:inline-flex;align-items:center;gap:5px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.task-filterbar{min-height:52px;display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid var(--line);border-radius:11px;background:#edede9}.filter-title{height:30px;display:flex;align-items:center;gap:6px;padding:0 8px 0 2px;border-right:1px solid #d7d8d2;color:#5d605a;font-size:9.5px;font-weight:700;white-space:nowrap}.task-filterbar label{height:32px;display:flex;align-items:center;gap:6px;padding:0 4px 0 9px;border:1px solid #d8d9d4;border-radius:8px;background:var(--paper);color:var(--faint);font-size:8.5px;white-space:nowrap}.task-filterbar select{height:28px;min-width:74px;border:0;background:transparent;color:var(--ink);outline:0;font-family:inherit;font-size:9.5px;cursor:pointer}.task-filterbar .sort-filter{margin-left:auto}.task-filterbar .sort-filter select{min-width:85px}.task-filterbar .project-filter select{width:190px}.clear-filters{height:31px;padding:0 8px;border:0;background:transparent;color:#6c6f69;font-family:inherit;font-size:9px;cursor:pointer;white-space:nowrap}.clear-filters:hover{color:var(--ink);text-decoration:underline}.bulk-bar{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:7px 10px 7px 13px;border-radius:11px;background:var(--ink);color:#fff;box-shadow:0 8px 22px #1415131f}.bulk-bar>div{display:flex;align-items:center;gap:8px}.bulk-bar strong,.bulk-bar span{font-size:9.5px}.bulk-bar>div:first-child button{border:0;background:transparent;color:#bfc1bb;font-family:inherit;font-size:9px;cursor:pointer}.bulk-bar select{height:31px;min-width:105px;padding:0 8px;border:1px solid #454741;border-radius:7px;background:#282a26;color:#fff;font-family:inherit;font-size:9.5px;outline:0}.bulk-apply{height:31px;padding:0 11px;border:0;border-radius:7px;background:#fff;color:var(--ink);font-family:inherit;font-size:9.5px;font-weight:700;cursor:pointer}.task-list-panel{overflow:hidden}.task-list-head,.task-list-row{min-width:970px;display:grid;align-items:center;column-gap:12px;padding:0 13px}.task-list-head.admin-columns,.task-list-item.admin-columns .task-list-row{grid-template-columns:26px minmax(250px,1.45fr) 175px 90px 103px 80px 78px 30px}.task-list-head.member-columns,.task-list-item.member-columns .task-list-row{grid-template-columns:26px minmax(295px,1.65fr) 185px 110px 88px 85px 30px}.task-list-head{min-height:39px;background:#edede9;color:var(--muted);font-size:8px;text-transform:uppercase;letter-spacing:.045em}.task-list-body{overflow-x:auto}.task-list-item{min-width:970px;border-bottom:1px solid #e8e8e4;background:var(--paper);transition:background .16s ease}.task-list-item:last-child{border-bottom:0}.task-list-item:hover,.task-list-item.expanded{background:#f7f7f4}.task-list-row{min-height:61px}.row-check{width:26px;display:grid;place-items:center}.row-check input{width:14px;height:14px;accent-color:var(--ink);cursor:pointer}.task-name-cell{min-width:0;display:grid;grid-template-columns:7px minmax(0,1fr);gap:9px;align-items:center;border:0;border-radius:4px;outline:0;background:transparent;padding:0;text-align:left;cursor:pointer}.task-name-cell:focus-visible{box-shadow:0 0 0 2px #c7c9c2}.task-name-cell>span:last-child{min-width:0;display:flex;flex-direction:column}.task-name-cell strong{overflow:hidden;color:var(--ink);font-size:10.5px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.task-name-cell small{margin-top:4px;overflow:hidden;color:var(--faint);font-size:8.5px;text-overflow:ellipsis;white-space:nowrap}.task-project-cell{min-width:0;display:flex;flex-direction:column;color:#555853}.task-project-cell strong{overflow:hidden;font-size:9.5px;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.task-project-cell small{margin-top:3px;color:var(--faint);font-size:7.5px;letter-spacing:.02em}.list-owner{display:flex;align-items:center;gap:7px;color:#555853;font-size:9.5px}.list-status{height:28px;display:flex;align-items:center;position:relative;border-radius:7px;background:#ecece8}.list-status:before{content:"";width:5px;height:5px;position:absolute;left:8px;border-radius:50%;background:#858882;pointer-events:none}.list-status.status-doing{background:#f3eadc}.list-status.status-doing:before{background:#ad7d31}.list-status.status-review{background:#ece8f3}.list-status.status-review:before{background:#776393}.list-status.status-done{background:#e6f0e9}.list-status.status-done:before{background:#4f8463}.list-status select{width:100%;height:100%;padding:0 20px 0 19px;border:0;background:transparent;color:#4e514c;outline:0;font-family:inherit;font-size:9px;cursor:pointer}.list-due{display:flex;align-items:center;gap:5px;color:#72756f;font-size:9px;white-space:nowrap}.list-due.due-now{color:#9a5949;font-weight:700}.list-priority{display:flex;align-items:center;gap:6px;color:#6a6d67;font-size:9px;white-space:nowrap}.list-priority.high{color:#8f5142}.expand-task{width:28px;height:28px}.expand-task svg{transition:transform .18s ease}.expand-task.open svg{transform:rotate(180deg)}.task-row-detail{min-width:970px;display:grid;grid-template-columns:minmax(310px,1.55fr) repeat(3,minmax(145px,.7fr));gap:12px;padding:13px 55px 15px;border-top:1px dashed #deded8;background:#f3f3ef}.task-row-detail>div{min-width:0;display:flex;flex-direction:column;gap:5px;padding-right:12px;border-right:1px solid #deded8}.task-row-detail>div:last-child{border-right:0}.task-row-detail span{color:var(--faint);font-size:8px}.task-row-detail strong{display:flex;align-items:flex-start;gap:5px;color:#555853;font-size:9px;line-height:1.45;font-weight:500}.detail-note strong{color:var(--ink)}.task-list-footer{min-height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 14px;border-top:1px solid var(--line);background:#f7f7f4;color:var(--faint);font-size:8.5px}.task-list-footer span{display:inline-flex;align-items:center;gap:5px}.task-list-empty{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--faint);text-align:center}.task-list-empty strong{margin-top:10px;color:var(--ink);font-size:11px}.task-list-empty span{margin-top:4px;font-size:9px}.task-list-empty button{margin-top:12px;border:0;background:transparent;color:var(--ink);font-family:inherit;font-size:9px;text-decoration:underline;cursor:pointer}.kanban-board{display:grid;grid-template-columns:repeat(4,minmax(220px,1fr));gap:10px;align-items:start;overflow-x:auto;padding-bottom:10px}.kanban-column{min-width:220px;background:#eaeae6;border-radius:var(--radius);padding:8px}.kanban-header{height:40px;display:flex;align-items:center;justify-content:space-between;padding:0 4px 0 6px}.kanban-header>div{display:flex;align-items:center;gap:7px}.kanban-header strong{font-size:10.5px}.kanban-header em{min-width:20px;height:20px;border-radius:6px;background:#ffffffa6;display:grid;place-items:center;font-size:9px;font-style:normal;color:var(--muted)}.column-indicator{width:3px;height:15px;border-radius:3px;background:#7b7d78}.column-doing .column-indicator{background:#bc8b3e}.column-review .column-indicator{background:#7c6a9b}.column-done .column-indicator{background:#5b8f70}.kanban-stack{display:flex;flex-direction:column;gap:7px}.task-card{border:1px solid #deded9;background:var(--paper);border-radius:10px;padding:11px;box-shadow:0 1px 2px #00000006}.task-card-top,.task-card-footer{display:flex;align-items:center;justify-content:space-between}.task-card .icon-button{width:26px;height:26px}.priority-label{display:inline-flex;min-height:20px;align-items:center;border-radius:6px;padding:2px 6px;background:#eeeee9;color:#777a74;font-size:8px}.priority-label.high{background:#f3e6e2;color:#8a4e40}.task-card h3{font-size:11.5px;margin:9px 0 6px;line-height:1.45;min-height:33px}.task-project{font-size:9px;color:var(--faint)}.task-owner{display:flex;align-items:center;gap:6px;margin-top:10px;color:#656862;font-size:9px}.member-avatar.small{width:22px;height:22px;border-radius:7px;font-size:8px}.task-card-footer{border-top:1px solid #e9e9e5;margin-top:11px;padding-top:8px;color:var(--faint);font-size:9px}.task-card-footer>span{display:inline-flex;align-items:center;gap:4px}.task-card-footer .due-now{color:#9a5949}.task-card-footer button{width:25px;height:25px;display:grid;place-items:center;border:1px solid var(--line);background:#f4f4f0;border-radius:7px;cursor:pointer}.task-card-footer button:hover{background:var(--ink);color:#fff}.empty-column{min-height:80px;border:1px dashed #d1d2cd;border-radius:9px;display:grid;place-items:center;color:#9b9e98;font-size:9px}.admin-seal{min-width:145px;display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:11px;background:var(--ink);color:#fff}.admin-seal>div{display:flex;flex-direction:column;line-height:1.1}.admin-seal small{color:#bfc1bb;font-size:8px}.admin-seal strong{margin-top:4px;font-size:11px}.team-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.private-chip{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:4px 8px;border:1px solid var(--line);border-radius:7px;background:#f2f2ee;color:#696c66;font-size:9px;white-space:nowrap}.team-table{width:100%;overflow-x:auto}.team-row{width:100%;min-width:900px;min-height:66px;display:grid;grid-template-columns:minmax(230px,1.45fr) 85px 75px 90px minmax(145px,.8fr) 125px 82px;gap:14px;align-items:center;padding:0 17px;border:0;border-bottom:1px solid #e9e9e5;background:transparent;text-align:left;cursor:pointer}.team-row:last-child{border-bottom:0}.team-row:not(.team-head):hover{background:#f5f5f1}.team-head{min-height:38px;background:#f0f0ec;color:var(--muted);font-size:8.5px;text-transform:uppercase;letter-spacing:.04em;cursor:default}.member-cell{display:flex;align-items:center;gap:10px;min-width:0}.member-cell>span:last-child{display:flex;flex-direction:column;min-width:0}.member-cell strong{font-size:11px}.member-cell small{margin-top:3px;color:var(--faint);font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-row>strong{font-size:12px}.load-cell{display:grid;grid-template-columns:1fr 33px;gap:8px;align-items:center}.load-cell strong{font-size:9px;text-align:right}.availability{width:fit-content;min-height:24px;display:inline-flex;align-items:center;padding:4px 7px;border-radius:7px;background:#e6f0e9;color:#3d6d4e;font-size:9px;white-space:nowrap}.availability.busy{background:#f3e9da;color:#80602e}.availability.waiting{background:#ece9f4;color:#675884}.open-private{display:flex;align-items:center;justify-content:flex-end;gap:5px;color:#565954;font-size:9px;white-space:nowrap}.drawing-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.drawing-summary>div{border:1px solid var(--line);background:var(--paper);border-radius:var(--radius-sm);min-height:69px;display:grid;grid-template-columns:30px 1fr auto;align-items:center;padding:12px;gap:9px}.drawing-summary span{color:var(--muted);font-size:10px}.drawing-summary strong{font-size:19px}.table-panel{overflow:hidden}.drawing-table{width:100%;overflow-x:auto}.table-row{min-width:980px;display:grid;grid-template-columns:80px minmax(180px,1.3fr) 190px 80px 105px 120px 38px;gap:14px;align-items:center;min-height:61px;padding:0 17px;border-bottom:1px solid #e9e9e5;font-size:10px}.table-row:last-child{border-bottom:0}.table-row:hover:not(.table-head){background:#f6f6f2}.table-head{min-height:38px;background:#f0f0ec;color:var(--muted);font-size:8.5px;text-transform:uppercase;letter-spacing:.04em}.drawing-name{display:inline-flex;align-items:center;gap:8px;min-width:0}.drawing-name svg{color:#777a74;flex:0 0 auto}.drawing-project-cell{min-width:0;display:flex;flex-direction:column}.drawing-project-cell strong{overflow:hidden;font-size:9.5px;text-overflow:ellipsis;white-space:nowrap}.drawing-project-cell small{margin-top:3px;color:var(--faint);font-size:8px}.table-row code{font-family:inherit;font-size:9px;padding:4px 6px;width:fit-content;background:#efefeb;border-radius:6px}.muted-cell{color:var(--faint)}.calendar-panel{overflow:hidden}.calendar-top{min-height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 17px;border-bottom:1px solid var(--line)}.calendar-top h2{font-size:13px}.calendar-top button{border:1px solid var(--line);background:#f6f6f2;border-radius:7px;padding:6px 9px;cursor:pointer;font-size:9px}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);min-height:480px}.calendar-grid>div{border-right:1px solid var(--line);padding:8px}.calendar-grid>div:last-child{border-right:0}.calendar-grid>div.today{background:#f5f5f1}.calendar-grid header{height:34px;color:var(--muted);font-size:10px;border-bottom:1px solid var(--line);display:flex;align-items:center}.today header{color:var(--ink);font-weight:700}.event{margin-top:9px;border-radius:8px;padding:9px;display:flex;flex-direction:column;min-height:78px;background:#e9e9e5}.event time{font-size:8px;opacity:.68}.event strong{font-size:9.5px;margin-top:7px;line-height:1.3}.event span{font-size:8px;margin-top:3px;opacity:.65}.event.dark{background:var(--ink);color:#fff}.event.warning{background:#eee4d4;color:#725529}.updates-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:12px}.update-feed{padding:0 17px}.update-row{display:grid;grid-template-columns:34px 1fr 34px;gap:12px;align-items:start;padding:18px 0;border-bottom:1px solid var(--line)}.update-row:last-child{border-bottom:0}.update-row strong{font-size:11px}.update-row p{margin:3px 0 0;color:var(--faint);font-size:9px}.update-note{margin-top:10px;padding:9px 10px;border-radius:8px;background:#f1f1ed;color:#696c66;font-size:9.5px}.update-aside{padding:17px;align-self:start;display:flex;flex-direction:column}.update-aside h2{margin:0 0 10px;font-size:12px}.update-aside label{min-height:32px;display:flex;align-items:center;gap:8px;font-size:10px;color:#656862}.update-aside input{accent-color:var(--ink)}.update-aside hr{border:0;border-top:1px solid var(--line);width:100%;margin:14px 0}.archive-empty{min-height:430px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.archive-empty h2{margin:15px 0 5px;font-size:15px}.archive-empty p{margin:0 0 18px;max-width:390px;color:var(--muted);font-size:10px;line-height:1.6}.back-link{border:0;background:transparent;color:var(--muted);display:inline-flex;width:fit-content;align-items:center;gap:6px;font-size:10px;cursor:pointer;padding:0}.back-link svg{transform:rotate(180deg)}.project-hero{display:flex;align-items:center;gap:15px;border:1px solid var(--line);background:var(--paper);border-radius:var(--radius);padding:17px}.project-hero-mark{width:54px;height:54px;border-radius:12px;display:grid;place-items:center;background:#e8e8e4;border:1px solid #dcdcd7;font-size:17px;font-weight:800}.project-hero-main{flex:1;min-width:0}.project-hero h1{font-size:20px;margin:3px 0 2px}.project-hero p{margin:0;color:var(--faint);font-size:10px}.project-hero-stat{width:150px}.project-hero-stat>span{font-size:9px;color:var(--faint)}.project-hero-stat>strong{display:block;font-size:16px;margin:2px 0 7px}.detail-tabs{display:flex;align-items:center;gap:4px;border-bottom:1px solid var(--line)}.detail-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:10px 13px;color:var(--muted);font-size:10px;cursor:pointer}.detail-tabs button.active{border-bottom-color:var(--ink);color:var(--ink);font-weight:700}.detail-overview{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:12px}.phase-panel{padding-bottom:16px}.phase-panel .panel-header>span{background:#eeeee9;border-radius:7px;padding:5px 8px;color:var(--muted);font-size:9px}.phase-track{display:grid;grid-template-columns:repeat(5,1fr);padding:25px 20px 18px}.phase-track>div{position:relative;display:flex;flex-direction:column;align-items:center;gap:7px;color:#9b9e98;font-size:9px;text-align:center}.phase-track>div:before{content:"";position:absolute;top:12px;right:50%;width:100%;height:1px;background:#d9dad5;z-index:0}.phase-track>div:first-child:before{display:none}.phase-track>div span{width:25px;height:25px;position:relative;z-index:1;border-radius:50%;border:1px solid #d3d4cf;background:var(--paper);display:grid;place-items:center}.phase-track>div.complete,.phase-track>div.current{color:var(--ink)}.phase-track>div.complete:before,.phase-track>div.current:before{background:var(--ink)}.phase-track>div.complete span{background:var(--ink);color:#fff;border-color:var(--ink)}.phase-track>div.current span{border:2px solid var(--ink)}.phase-panel hr{border:0;border-top:1px solid var(--line);margin:0 17px}.project-facts{display:grid;grid-template-columns:repeat(4,1fr);padding:16px 20px 0}.project-facts>div{display:flex;flex-direction:column;border-right:1px solid var(--line);padding-left:13px}.project-facts>div:first-child{padding-left:0}.project-facts>div:last-child{border-right:0}.project-facts span{color:var(--faint);font-size:9px}.project-facts strong{margin-top:5px;font-size:11px}.decision-panel{padding-bottom:11px}.decision-item{display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:start;padding:13px 16px;border-bottom:1px solid var(--line)}.decision-item>div{display:flex;flex-direction:column}.decision-item strong{font-size:10px}.decision-item span{font-size:9px;color:var(--faint);margin-top:4px}.decision-item svg{color:#8a6a37}.project-detail .task-page>.page-heading,.project-detail .task-page>.view-toolbar,.project-detail .page-stack>.page-heading{display:none}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#12131157;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:grid;place-items:center;padding:20px}.modal{width:min(510px,100%);border-radius:16px;border:1px solid #d8d9d3;background:var(--paper);box-shadow:0 20px 70px #0000002e;padding:20px;animation:modal-in .2s ease}.modal.modal-wide{width:min(650px,100%);max-height:calc(100vh - 40px);overflow-y:auto}@keyframes modal-in{0%{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}.modal-header{display:flex;align-items:start;justify-content:space-between;margin-bottom:18px}.modal-header h2{margin:4px 0 0;font-size:18px}.modal>label,.modal-grid label{display:flex;flex-direction:column;gap:6px;font-size:10px;color:#5f625c;margin-bottom:14px}.modal input,.modal select,.modal textarea{border:1px solid var(--line-strong);border-radius:9px;background:#fff;padding:0 11px;outline:none;color:var(--ink);font:inherit;font-size:11px}.modal input,.modal select{height:40px}.modal textarea{min-height:76px;resize:vertical;padding-top:10px;line-height:1.5}.modal input:focus,.modal select:focus,.modal textarea:focus{border-color:#9da098;box-shadow:0 0 0 3px #1414140d}.modal-privacy{min-height:34px;display:flex;align-items:center;gap:7px;margin:-4px 0 15px;padding:7px 9px;border-radius:8px;background:#eeeee9;color:#62655f;font-size:9px}.fixed-assignee{height:40px;display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:9px;padding:0 10px;background:#f4f4f0;color:var(--ink);font-size:10px}.modal-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;border-top:1px solid var(--line);padding-top:15px;margin-top:4px}.danger-button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #d9b8ae;border-radius:9px;padding:0 12px;background:#fff8f5;color:#9b4938;font-family:inherit;font-size:9.5px;font-weight:700;cursor:pointer}.danger-button:hover{border-color:#a95643;background:#a95643;color:#fff}.danger-button-compact{min-height:34px;white-space:nowrap}.danger-button-solid{border-color:#a95643;background:#a95643;color:#fff}.danger-button-solid:hover{border-color:#873a2b;background:#873a2b}.confirm-backdrop{z-index:120}.confirm-delete-modal{width:min(470px,100%)}.delete-warning-icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:14px;border-radius:13px;background:#f3e1dc;color:#9b4938}.delete-target-name{margin:-4px 0 14px;font-size:13px;font-weight:700;line-height:1.45}.delete-explanation{margin:0;color:var(--muted);font-size:10px;line-height:1.6}.delete-impact{display:flex;flex-direction:column;gap:6px;border:1px solid #e5c9c0;border-radius:10px;background:#fff8f5;padding:12px;color:#75463b}.delete-impact strong{font-size:10px}.delete-impact span{font-size:11px;font-weight:700}.delete-impact small{color:#8a6a62;font-size:8.5px;line-height:1.45}.form-error{min-height:34px;display:flex;align-items:center;gap:7px;margin:-5px 0 14px;padding:7px 9px;border-radius:8px;background:#f3e6e2;color:#8a4e40;font-size:9.5px}.check-field{justify-content:flex-start}.checkbox-line{min-height:40px;display:flex;align-items:center;gap:8px;color:var(--ink);font-size:10px}.checkbox-line input{width:16px;height:16px;padding:0;accent-color:var(--ink)}.project-name-preview{display:flex;flex-direction:column;gap:4px;margin:-2px 0 14px;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#f2f2ee}.project-name-preview span,.project-name-preview small{color:var(--faint);font-size:9px}.project-name-preview strong{font-size:12px}.secondary-button{text-decoration:none}.disabled-link{opacity:.38;cursor:default}.task-row-detail a{color:inherit;text-underline-offset:2px}.local-pilot-note{display:flex;align-items:center;gap:9px;min-height:54px;padding:10px 9px;border-top:1px solid var(--line);color:var(--muted)}.local-pilot-note>div{display:flex;flex-direction:column;gap:3px}.local-pilot-note strong{color:var(--ink);font-size:9px}.local-pilot-note span{font-size:8px;line-height:1.35}.member-task-tabs{min-height:52px;display:flex;align-items:center;gap:7px;overflow-x:auto;padding:7px;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper)}.member-task-tabs button{min-width:max-content;height:36px;display:flex;align-items:center;gap:7px;border:1px solid transparent;border-radius:9px;padding:0 10px;background:transparent;color:var(--muted);font-family:inherit;font-size:9.5px;cursor:pointer}.member-task-tabs button:hover{background:#f2f2ee;color:var(--ink)}.member-task-tabs button.active{border-color:var(--ink);background:var(--ink);color:#fff}.member-task-tabs button.active .member-avatar{border-color:#ffffff40;background:#ffffff1f;color:#fff}.member-task-tabs em{min-width:19px;height:19px;display:grid;place-items:center;border-radius:6px;background:#ecece7;color:var(--muted);font-size:8px;font-style:normal}.member-task-tabs button.active em{background:#ffffff24;color:#fff}.project-task-groups{display:flex;flex-direction:column;gap:12px}.project-task-group{overflow:hidden}.project-group-header{min-height:66px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 16px;border-bottom:1px solid var(--line);background:#f4f4f0}.project-group-header>div{display:flex;align-items:center;gap:10px}.project-group-header>div:last-child{flex-direction:column;align-items:flex-end;gap:3px;color:var(--muted);font-size:9px}.project-group-header h2{margin:0;font-size:12px}.project-group-header p{margin:3px 0 0;color:var(--faint);font-size:8.5px}.project-group-header strong{color:var(--ink);font-size:9px}.task-card.clickable{cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.task-card.clickable:hover{transform:translateY(-1px);border-color:#bfc0ba;box-shadow:0 5px 14px #0000000e}.task-card.clickable:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.open-detail-hint{display:inline-flex;align-items:center;gap:3px;color:var(--faint);font-size:8px}.editable-due{border:0;background:transparent;padding:0;font-family:inherit;cursor:pointer;text-align:left}.editable-due:hover{text-decoration:underline;text-underline-offset:3px}.task-detail-modal{width:min(760px,100%);max-height:calc(100vh - 30px);overflow-y:auto;padding:0}.task-detail-header{position:sticky;top:0;z-index:3;margin:0;padding:18px 20px 14px;border-bottom:1px solid var(--line);background:#fafaf7f5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.task-detail-modal>label,.task-detail-modal>.form-error,.task-detail-modal>.task-detail-project,.task-detail-modal>.task-detail-fields,.task-detail-modal>.rich-editor-field,.task-detail-modal>.modal-actions{margin-left:20px;margin-right:20px}.task-title-editor{margin-top:17px}.task-title-editor input{height:48px;font-size:15px;font-weight:700}.task-detail-project{min-height:52px;display:flex;align-items:center;gap:10px;margin-bottom:15px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#f3f3ef}.task-detail-project>div{display:flex;flex-direction:column;gap:3px}.task-detail-project strong{font-size:10.5px}.task-detail-project small{color:var(--faint);font-size:8.5px}.task-detail-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-bottom:14px}.task-detail-fields label{min-width:0;display:flex;flex-direction:column;gap:6px;color:#5f625c;font-size:9.5px}.rich-editor-field{margin-bottom:14px}.rich-editor-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;color:#5f625c;font-size:10px}.rich-toolbar{display:flex;align-items:center;gap:5px}.rich-toolbar button{height:29px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line-strong);border-radius:7px;padding:0 8px;background:#f4f4f0;color:var(--ink);font-family:inherit;font-size:8.5px;cursor:pointer}.rich-toolbar button:hover{background:var(--ink);color:#fff}.rich-editor{min-height:145px;max-height:280px;overflow-y:auto;border:1px solid var(--line-strong);border-radius:10px;background:#fff;padding:12px;outline:none;font-size:11px;line-height:1.7}.rich-editor:focus{border-color:#9da098;box-shadow:0 0 0 3px #1414140d}.rich-editor:empty:before{content:attr(data-placeholder);color:#a2a49f;pointer-events:none}.task-blocked-field{min-height:42px;justify-content:center;margin-bottom:12px!important;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#f4f4f0}.task-detail-modal .modal-actions{position:sticky;bottom:0;z-index:3;margin-bottom:0;padding:14px 20px;background:#fafaf7f7}.save-hint{margin-right:auto;align-self:center;color:var(--faint);font-size:8.5px}.editable-project-date input{width:135px;height:32px;margin-top:4px;border:1px solid var(--line);border-radius:7px;background:#f7f7f4;padding:0 7px;color:var(--ink);font:inherit;font-size:9px;cursor:pointer}.stat-card-link{width:100%;color:var(--ink);font-family:inherit;text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.stat-card-link:hover{transform:translateY(-2px);border-color:#bfc0ba;box-shadow:0 8px 22px #0000000e}.stat-card-link:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.stat-card .stat-open-hint{position:absolute;right:16px;bottom:12px;display:inline-flex;align-items:center;gap:3px;color:var(--ink);font-size:8px;opacity:0;transition:opacity .15s ease}.stat-card-link:hover .stat-open-hint{opacity:1}.hub-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.hub-summary>div{min-height:76px;display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--paper);padding:12px}.hub-summary span{color:var(--muted);font-size:10px}.hub-summary strong{font-size:21px}.hub-tabs{min-height:45px;display:flex;align-items:flex-end;gap:4px;border-bottom:1px solid var(--line)}.hub-tabs button{height:39px;border:0;border-bottom:2px solid transparent;background:transparent;padding:0 13px;color:var(--muted);font:inherit;font-size:10px;cursor:pointer}.hub-tabs button.active{border-bottom-color:var(--ink);color:var(--ink);font-weight:700}.team-note-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.team-note-card{min-height:230px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:15px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.team-note-card:hover{transform:translateY(-2px);border-color:#bfc0ba;box-shadow:0 8px 24px #0000000e}.team-note-card-top{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;color:var(--muted);font-size:9px}.team-note-card h2{margin:14px 0 6px;font-size:13px;line-height:1.4}.team-note-card>p{margin:0;color:var(--muted);font-size:10px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.team-note-card footer{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:auto;padding-top:12px;border-top:1px solid var(--line);color:var(--faint);font-size:8.5px}.team-note-card footer span{display:inline-flex;align-items:center;gap:4px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.team-note-card footer strong{color:var(--ink);font-size:8.5px}.hub-type-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#ecece8;color:#666963}.hub-type-icon.meeting,.hub-type-icon.contact{background:#e7eef0;color:#48646a}.hub-type-icon.decision,.hub-type-icon.material{background:#f1e8d9;color:#795b2c}.hub-type-icon.general,.hub-type-icon.reference{background:#ebe8f2;color:#655780}.note-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:12px}.note-tags span{min-height:21px;display:inline-flex;align-items:center;gap:4px;border-radius:6px;background:#efefeb;padding:3px 6px;color:#777a74;font-size:8px}.hub-empty{grid-column:1 / -1;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--faint)}.hub-empty h2{margin:12px 0 4px;color:var(--ink);font-size:13px}.hub-empty p{margin:0;font-size:9.5px}.hub-detail-modal{width:min(720px,100%);max-height:calc(100vh - 34px);overflow-y:auto}.hub-detail-header{display:grid;grid-template-columns:38px 1fr auto;align-items:start;gap:10px;padding-bottom:15px;border-bottom:1px solid var(--line)}.hub-detail-header h2{margin:4px 0 0;font-size:18px}.hub-note-meta{display:flex;flex-wrap:wrap;gap:8px;margin:13px 0}.hub-note-meta span{min-height:27px;display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:7px;padding:4px 8px;color:var(--muted);font-size:9px}.hub-detail-section{padding:13px 0;border-bottom:1px solid var(--line)}.hub-detail-section h3{display:flex;align-items:center;gap:6px;margin:0 0 8px;font-size:10px}.hub-detail-section p{margin:0;color:#555853;font-size:10.5px;line-height:1.7}.participant-chips{display:flex;flex-wrap:wrap;gap:6px}.participant-chips span{border-radius:7px;background:#efefeb;padding:5px 8px;color:var(--muted);font-size:9px}.decision-box{margin-top:6px;padding:13px;border:1px solid #e4d8c6;border-radius:10px;background:#f5efe5}.action-item-list{display:flex;flex-direction:column;gap:7px}.action-item-list>div{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);border-radius:9px;padding:7px 9px}.action-item-list span{display:inline-flex;align-items:center;gap:7px;color:#4f524d;font-size:10px}.action-item-list span.done{text-decoration:line-through;color:var(--faint)}.action-item-list button{min-height:28px;display:inline-flex;align-items:center;gap:4px;border:1px solid var(--line-strong);border-radius:7px;background:#fff;padding:0 8px;font:inherit;font-size:8.5px;cursor:pointer}.action-item-list button:hover{background:var(--ink);color:#fff}.empty-copy{color:var(--faint)!important}.hub-drive-link{width:fit-content;margin-top:14px}.hub-form textarea{min-height:68px}.knowledge-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.knowledge-tabs button{min-height:62px;display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:11px;background:var(--paper);padding:10px 12px;color:var(--muted);font:inherit;text-align:left;cursor:pointer}.knowledge-tabs button:hover{border-color:#bfc0ba}.knowledge-tabs button.active{border-color:var(--ink);background:var(--ink);color:#fff}.knowledge-tabs span{font-size:10px}.knowledge-tabs em{min-width:23px;height:23px;display:grid;place-items:center;border-radius:7px;background:#ecece8;color:var(--muted);font-size:9px;font-style:normal}.knowledge-tabs button.active em{background:#ffffff26;color:#fff}.knowledge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.knowledge-card{min-height:265px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:15px}.knowledge-card header{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:center}.knowledge-card header span{color:var(--faint);font-size:8.5px}.knowledge-card h2{margin:3px 0 0;font-size:13px}.knowledge-company{display:flex;align-items:center;gap:7px;margin-top:14px;padding:9px;border-radius:8px;background:#f1f1ed;color:var(--muted);font-size:9.5px}.knowledge-company strong{margin-left:auto;color:var(--ink)}.knowledge-contact{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:10px}.knowledge-contact a,.knowledge-contact span{min-width:0;display:inline-flex;align-items:center;gap:5px;color:#62655f;font-size:9px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.knowledge-contact a:hover{color:var(--ink);text-decoration:underline}.knowledge-card>p{margin:13px 0;color:var(--muted);font-size:9.5px;line-height:1.65}.knowledge-card footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:11px;border-top:1px solid var(--line);color:var(--faint);font-size:8.5px}.knowledge-card footer a{display:inline-flex;align-items:center;gap:4px;color:var(--ink);text-decoration:none}.toast{position:fixed;right:22px;bottom:22px;z-index:110;min-height:43px;border-radius:11px;background:var(--ink);color:#fff;display:flex;align-items:center;gap:9px;padding:0 14px;box-shadow:0 10px 30px #0003;font-size:10px;animation:toast-in .25s ease}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(max-width:1180px){.stats-grid,.project-card-grid,.team-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid,.lower-grid{grid-template-columns:1fr}.viewer-copy{display:none}.viewer-switch{min-width:51px;padding-right:7px}.project-row{grid-template-columns:40px minmax(160px,1fr) minmax(120px,.8fr) auto 18px}.project-due{display:none}.detail-overview{grid-template-columns:1fr}.task-filterbar{flex-wrap:wrap}.task-filterbar .sort-filter{margin-left:0}.team-note-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:820px){.sidebar{width:78px;align-items:center;padding-inline:11px}.sidebar .brand-row{width:100%;justify-content:center;padding-inline:0}.sidebar .brand-row>div:nth-child(2),.sidebar .workspace-switch,.sidebar .nav-label,.sidebar .main-nav button span,.sidebar .main-nav button em,.sidebar .sidebar-footer{display:none}.sidebar .main-nav{width:100%;padding-top:28px}.sidebar .main-nav button{justify-content:center;padding:0}.workspace,.sidebar.compact+.workspace{margin-left:78px}.sidebar-toggle{display:none}.topbar{padding:0 18px}.breadcrumb{display:none}.top-actions,.search{width:100%}.viewer-switch{min-width:51px}.content{padding:20px}.kanban-board{grid-template-columns:repeat(4,250px)}.calendar-grid{overflow-x:auto;grid-template-columns:repeat(7,140px)}.updates-layout{grid-template-columns:1fr}.update-aside{display:none}.task-detail-fields{grid-template-columns:1fr 1fr}.hub-summary,.knowledge-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.knowledge-grid{grid-template-columns:1fr}}@media(max-width:600px){.app-shell{display:block}.sidebar{position:fixed;inset:auto 0 0 0;width:100%;height:64px;z-index:40;flex-direction:row;padding:8px 10px;border-right:0;border-top:1px solid var(--line)}.sidebar .brand-row,.sidebar .main-nav .nav-label,.sidebar .main-nav button:nth-of-type(n+5){display:none}.sidebar .main-nav{flex-direction:row;padding:0;width:100%;justify-content:space-around}.sidebar .main-nav button{flex:1;height:46px}.workspace,.sidebar.compact+.workspace{margin-left:0;padding-bottom:65px}.topbar .primary-button{width:36px;padding:0;font-size:0}.search kbd{display:none}.content{padding:16px}.page-heading{align-items:flex-start;flex-direction:column}.stats-grid,.project-card-grid,.drawing-summary,.team-stats{grid-template-columns:1fr}.viewer-switch{display:none}.view-toolbar{height:auto;min-height:47px;flex-wrap:wrap;gap:8px;padding:8px 0}.owner-select{order:3;width:100%;justify-content:space-between}.task-filterbar{align-items:flex-start}.filter-title{width:100%;border-right:0;border-bottom:1px solid #d7d8d2}.bulk-bar{align-items:flex-start;flex-direction:column}.project-row{grid-template-columns:40px 1fr auto 18px}.project-progress{display:none}.lower-grid{grid-template-columns:1fr}.project-hero{align-items:flex-start;flex-wrap:wrap}.project-hero-main{min-width:calc(100% - 72px)}.project-hero-stat{flex:1}.phase-track{grid-template-columns:1fr;gap:10px;align-items:start}.phase-track>div{flex-direction:row;text-align:left}.phase-track>div:before{top:auto;bottom:50%;left:12px;right:auto;width:1px;height:100%}.project-facts{grid-template-columns:1fr 1fr;gap:14px}.project-facts>div{border-right:0;padding-left:0}.modal-grid{grid-template-columns:1fr;gap:0}.task-detail-fields{grid-template-columns:1fr}.task-detail-modal>label,.task-detail-modal>.form-error,.task-detail-modal>.task-detail-project,.task-detail-modal>.task-detail-fields,.task-detail-modal>.rich-editor-field,.task-detail-modal>.modal-actions{margin-left:14px;margin-right:14px}.project-group-header{align-items:flex-start;flex-direction:column}.project-group-header>div:last-child{align-items:flex-start}.hub-summary,.team-note-grid,.knowledge-tabs{grid-template-columns:1fr}.hub-tabs{overflow-x:auto}.hub-tabs button{white-space:nowrap}.knowledge-contact{grid-template-columns:1fr}}
