:root{--bg:#f3f5f6;--ink:#182b36;--muted:#6b7a83;--line:#e2e8eb;--nav:#111f30;--teal:#157d70;--teal-light:#d7f0e7;--gold:#b77828;--red:#a34445;--white:#fff;--shadow:0 9px 32px rgba(17,35,48,.045)}*{box-sizing:border-box}html{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}body{margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.layout{min-height:100vh;display:flex}.sidebar{background:var(--nav);color:#fff;width:238px;min-width:238px;padding:32px 23px;display:flex;flex-direction:column;min-height:100vh}.brand-mark{background:#d5f3df;color:#102f2b;font-weight:850;font-size:24px;display:grid;place-items:center;border-radius:12px;width:43px;height:43px;letter-spacing:-.12em;padding-right:4px;position:relative}.brand-mark:after{content:"";position:absolute;right:4px;top:5px;width:7px;height:7px;border-radius:50%;background:var(--teal)}.brand-mark.big{width:56px;height:56px;font-size:32px}.wordmark{display:flex;align-items:center;gap:10px;font-size:13px;letter-spacing:.14em;font-weight:600}.wordmark b{color:#b7e7d9;font-weight:750}.sidecaption{margin:21px 0 34px;color:#90a2b5;font-size:11px;letter-spacing:.035em}.side-nav{display:grid;gap:9px}.nav-btn{background:transparent;color:#b6c3cc;border:none;padding:12px 14px;text-align:left;border-radius:10px;font-size:14px;display:flex;gap:12px;align-items:center}.nav-btn.active{color:#fff;background:#283b50}.nav-btn:hover{background:#25384c}.sidebar-bottom{margin-top:auto;padding-top:18px;font-size:11px;color:#8da3af;line-height:2}.mini-dot{display:inline-block;width:7px;height:7px;background:#68c8a7;border-radius:50%;margin-right:5px}.logout{display:block;background:transparent;color:#b0c0cd;border:0;padding:7px 0}.logout:hover{color:white}main{width:100%;max-width:1500px;padding:42px 4.3vw 55px;margin:auto}.topline{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.eyebrow{font-size:10px;letter-spacing:.17em;font-weight:760;color:var(--teal);margin:0 0 12px}.topline h1{font-size:clamp(26px,3vw,38px);letter-spacing:-.045em;margin:0;line-height:1.14;font-weight:750}.subtitle{font-size:14px;color:var(--muted);margin:10px 0 0}.top-actions{display:flex;align-items:center;gap:9px}.sync-label{font-size:11px;color:#7d8e98;white-space:nowrap}.circle{display:grid;place-items:center;border:1px solid var(--line);background:#fff;color:var(--ink);width:38px;height:38px;border-radius:11px;font-size:22px}.circle:hover{border-color:#9bbbae}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-top:33px}.metric{background:#fff;border:1px solid #e6ebee;border-radius:15px;padding:22px 23px;display:grid;gap:13px;box-shadow:var(--shadow)}.metric span{font-size:12px;color:var(--muted)}.metric strong{font-size:32px;letter-spacing:-.045em;line-height:1;font-weight:780}.inline-notice{display:flex;gap:12px;align-items:start;background:#edf2f3;border:1px solid #e0e8e9;border-radius:11px;color:#54656f;padding:13px 16px;font-size:12px;line-height:1.65;margin-top:21px}.notice-icon{width:18px;height:18px;border:1px solid #b0c8c3;border-radius:100%;display:grid;place-items:center;font-size:11px;color:var(--teal);flex-shrink:0;margin-top:1px}.sectionhead{display:flex;align-items:center;justify-content:space-between;margin:42px 0 18px}.sectionhead h2{font-size:20px;font-weight:760;letter-spacing:-.02em;margin:0 0 5px}.sectionhead p{font-size:12px;color:var(--muted);margin:0}.small-badge{border-radius:8px;background:#e8efed;color:#427568;padding:7px 11px;font-size:12px;font-weight:800}.cardgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.project-card{border:1px solid #e2e8ea;background:white;border-radius:15px;box-shadow:var(--shadow);padding:20px;display:flex;flex-direction:column;gap:0;min-height:207px;cursor:pointer;transition:transform .1s ease,border-color .1s ease}.project-card:hover{transform:translateY(-1px);border-color:#adcfc2}.card-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.area-label{color:#70818c;text-transform:uppercase;letter-spacing:.12em;font-size:10px;font-weight:800}.chip{display:inline-block;padding:5px 9px;border-radius:6px;font-size:10px;font-weight:760;letter-spacing:.018em;white-space:nowrap;background:#edf0f3;color:#576b75}.chip.blocked,.chip.FAIL{background:#ffe8e5;color:#9c4845}.chip.waiting{background:#fff1d7;color:#946b24}.chip.active,.chip.PASS{background:#dff2ea;color:#207b60}.chip.unknown,.chip.NOT_VERIFIED{background:#eff1f3;color:#77838a}.chip.done{background:#dceee7;color:#256c57}.chip.planning{background:#e8edf8;color:#586a93}.card-title{font-size:19px;font-weight:730;letter-spacing:-.025em;line-height:1.25;margin:17px 0 8px}.card-desc{font-size:12px;color:#6f8089;line-height:1.65;margin:0 0 18px;max-width:67ch}.card-next{border-top:1px solid #edf0f1;padding-top:13px;display:flex;justify-content:space-between;gap:12px;margin-top:auto}.card-next div{min-width:0}.tiny-label{display:block;font-size:9px;color:#8b9ba3;font-weight:800;letter-spacing:.12em;margin-bottom:5px}.next-line{font-size:12px;display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;color:#36515c;font-weight:570}.open-indicator{font-size:22px;color:var(--teal);align-self:end}.filters{display:flex;gap:8px;overflow-x:auto;margin-bottom:18px;padding-bottom:4px;scrollbar-width:none}.filter-btn{border:1px solid #dee7e7;background:#fff;border-radius:9px;font-size:12px;padding:9px 14px;color:#637884;white-space:nowrap}.filter-btn.selected{background:#173f44;color:white;border-color:#173f44}.kanban{display:grid;grid-template-columns:repeat(5,minmax(180px,1fr));gap:12px;align-items:start;overflow-x:auto}.lane{background:#e9eef0;border-radius:13px;padding:11px;min-height:150px}.lane-head{font-weight:800;font-size:12px;display:flex;justify-content:space-between;align-items:center;padding:7px 4px 14px}.lane-head span{color:#8da1a6}.lane .project-card{min-height:166px;padding:13px;margin:0 0 9px;border-radius:11px}.lane .card-title{font-size:14px;margin:12px 0 8px}.lane .card-desc{font-size:11px}.lane .card-next{padding-top:10px}.lane .chip{font-size:9px}.empty{border:1px dashed #cfd9dc;border-radius:12px;color:#93a1a9;text-align:center;font-size:12px;padding:28px 14px}.activity{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.event{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;border-bottom:1px solid #edf1f1}.event:last-child{border:0}.event-dot{width:9px;height:9px;border-radius:100%;background:#68ad9b;flex-shrink:0;margin-top:4px}.event strong{font-size:13px}.event p{font-size:12px;color:#6a7e87;margin:5px 0}.event time{font-size:10px;color:#9aa8ae}footer{font-size:11px;color:#9aa6ad;line-height:1.7;margin-top:46px}.mobile-nav{display:none}.sheet-backdrop{position:fixed;inset:0;background:#0a1c2cb3;z-index:100}.detail-sheet{position:fixed;right:0;top:0;bottom:0;z-index:101;width:min(780px,80vw);background:white;box-shadow:-16px 0 40px #0b1d3040;display:flex;flex-direction:column}.sheet-grabber{display:none}.sheet-header{padding:30px 25px 18px;border-bottom:1px solid var(--line);display:flex;align-items:flex-start;justify-content:space-between}.sheet-header h2{font-size:24px;letter-spacing:-.03em;margin:0}.close{font-size:25px}.sheet-scroll{overflow:auto;padding:22px 25px 40px;overscroll-behavior:contain}.detail-chips{display:flex;gap:7px;margin-bottom:20px}.detail-section{padding:16px 0;border-top:1px solid var(--line)}.detail-label{font-size:10px;letter-spacing:.11em;color:#8a999f;font-weight:800}.detail-section p{font-size:14px;line-height:1.65;white-space:pre-line;margin:9px 0 0}.detail-section.provenance p{word-break:break-word;font-size:12px}.hint{color:#8a9ca3!important;font-size:11px!important;line-height:1.6!important}.action-row{display:flex;gap:9px;flex-wrap:wrap;margin:12px 0}.action-primary,.action-secondary{display:inline-flex;justify-content:center;align-items:center;border:1px solid #1a5550;padding:12px 15px;border-radius:10px;font-weight:700;font-size:12px;min-height:43px}.action-primary{background:#164c48;color:white}.action-secondary{background:#edf7f3;color:#155f52;border-color:#cde7df}.full{width:100%}.detail-section input,.detail-section textarea,.manual select,.manual textarea{width:100%;margin:9px 0 0;padding:12px;border:1px solid #dfe6e9;border-radius:9px;background:#fafbfc;color:var(--ink);font-size:13px;outline:0}.detail-section textarea,.manual textarea{resize:vertical;min-height:76px}.manual{border-top:1px solid var(--line);padding:19px 0}.manual summary{font-size:12px;color:#5d7b7d;font-weight:700;cursor:pointer}.control-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.control-row label{display:block;font-size:11px;color:var(--muted)}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#153734;color:white;z-index:200;padding:13px 19px;border-radius:10px;font-size:12px;box-shadow:0 6px 20px #0003;max-width:85vw}.login-body{min-height:100vh;background:linear-gradient(145deg,#142639,#1c3a3b);display:grid;place-items:center;padding:20px}.login-card{background:white;width:min(410px,100%);padding:34px;border-radius:22px;box-shadow:0 16px 60px #0003}.login-card .eyebrow{margin-top:30px}.login-card h1{margin:0;font-size:31px;letter-spacing:-.045em}.login-desc{font-size:13px;color:var(--muted);line-height:1.65;margin:12px 0 26px}.login-card label{font-size:12px;font-weight:700}.login-card input{display:block;width:100%;background:#f5f8f9;border:1px solid #d9e3e6;border-radius:10px;padding:14px;margin:9px 0 12px}.login-card .action-primary{cursor:pointer}.login-foot{font-size:11px;color:#9aa9b1;text-align:center;margin:20px 0 0}.error{font-size:11px;color:#a34445;min-height:14px}
@media(max-width:1100px){.kanban{grid-template-columns:repeat(5,minmax(210px,1fr))}}@media(max-width:830px){.sidebar{width:185px;min-width:185px;padding:25px 14px}.wordmark{font-size:11px}.cardgrid{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}main{padding:30px 24px 45px}}
@media(max-width:650px){.layout{display:block}.sidebar{display:none}main{padding:24px 16px calc(95px + env(safe-area-inset-bottom));width:100%}.topline h1{font-size:29px}.topline .subtitle{font-size:12px;max-width:260px}.eyebrow{font-size:9px}.top-actions{gap:3px}.sync-label{display:none}.circle{width:36px;height:36px}.metrics{grid-template-columns:repeat(4,1fr);gap:7px;margin-top:23px}.metric{border-radius:12px;padding:15px 9px;gap:10px;box-shadow:none}.metric span{font-size:9px;min-height:24px}.metric strong{font-size:27px}.inline-notice{font-size:11px;padding:11px;margin-top:15px}.sectionhead{margin:30px 0 14px}.sectionhead h2{font-size:19px}.sectionhead p{font-size:11px;line-height:1.5}.cardgrid{gap:11px}.project-card{padding:17px;min-height:185px}.card-title{font-size:18px}.card-desc{font-size:12px}.mobile-nav{position:fixed;display:grid;grid-template-columns:repeat(3,1fr);bottom:0;left:0;right:0;z-index:50;background:#fff;border-top:1px solid #e2eaed;box-shadow:0 -5px 24px #182b3610;padding:8px 15px calc(8px + env(safe-area-inset-bottom));gap:15px}.mobile-nav button{border:0;background:transparent;color:#8b9ba4;padding:7px 4px;border-radius:8px;font-size:10px;display:grid;justify-items:center;gap:3px;font-weight:680}.mobile-nav button span{font-size:23px;line-height:1}.mobile-nav button.active{color:#126c5a;background:#edf6f2}.kanban{display:block;overflow:visible}.lane{background:transparent;padding:0;min-height:0;margin-bottom:22px}.lane-head{border-bottom:1px solid #d9e5e5;padding:10px 0}.lane .project-card{margin-top:10px}.lane .empty{margin-top:10px}.detail-sheet{width:100vw;top:auto;bottom:0;height:94dvh;border-radius:22px 22px 0 0}.sheet-grabber{display:block;width:39px;height:5px;border-radius:9px;background:#dce4e6;margin:10px auto 0}.sheet-header{padding:15px 18px 16px}.sheet-header h2{font-size:22px}.sheet-scroll{padding:8px 18px calc(36px + env(safe-area-inset-bottom))}.action-row{flex-direction:column}.action-row .action-primary,.action-row .action-secondary{width:100%}footer{margin-top:30px}.toast{bottom:88px}}
.add-button{border:1px solid #bad9cf;background:#dff4ea;color:#185b4d;font-size:12px;font-weight:750;border-radius:9px;padding:10px 13px;white-space:nowrap}.add-button:hover{background:#c7eada}.chat-list{display:grid;gap:7px;margin-top:12px}.chat-entry{display:flex;align-items:center;justify-content:space-between;border:1px solid #e1eaea;background:#f6faf9;border-radius:8px;overflow:hidden}.chat-entry-link{padding:11px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:650;color:#16675c}.chat-entry-delete{border:0;border-left:1px solid #e1eaea;color:#a66760;background:transparent;font-size:18px;padding:7px 13px}.new-chat{padding-top:8px}.new-sheet{position:fixed;inset:0;background:#0d2035b3;display:grid;place-items:center;z-index:110;padding:20px}.new-panel{background:#fff;border-radius:19px;width:min(480px,100%);box-shadow:0 15px 60px #071e3244;overflow:hidden}.new-form{padding:24px;display:grid;gap:14px}.new-form label{display:grid;gap:6px;font-size:12px;color:#526e77;font-weight:680}.new-form input,.new-form textarea{width:100%;padding:12px;border:1px solid #dfe6e9;border-radius:9px;background:#fafbfc;font-size:13px;color:var(--ink)}.new-form textarea{resize:vertical}@media(max-width:650px){.add-button{padding:10px 9px;font-size:11px}.new-sheet{padding:0;align-items:end}.new-panel{width:100%;border-radius:19px 19px 0 0;padding-bottom:env(safe-area-inset-bottom)}.new-form{padding:20px}}
.quicktools{margin-top:18px;display:flex;align-items:center;gap:13px}.quicktools input{background:white;border:1px solid #e1e7ea;border-radius:10px;padding:12px 14px;min-width:210px;width:290px;color:var(--ink);font-size:12px;outline:none}.quicktools input:focus{border-color:#93bdb1}.area-filters{display:flex;align-items:center;gap:6px;overflow:auto;scrollbar-width:none}.area-filter{border:1px solid #e1e7ea;background:#fff;color:#667d84;border-radius:9px;padding:11px 12px;font-size:11px;white-space:nowrap}.area-filter.selected{background:#d9f0e6;border-color:#b9dfd2;color:#166a5a;font-weight:750}@media(max-width:900px){.quicktools{display:block}.quicktools input{width:100%;margin-bottom:10px}.area-filters{padding-bottom:4px}}@media(max-width:650px){.quicktools{margin-top:15px}.quicktools input{font-size:13px;padding:12px}.area-filters{margin:2px -16px 0;padding:0 16px 4px}}

#documentList{display:grid;gap:12px} #projectHistory{max-height:180px;overflow:auto} .provenance p{overflow-wrap:anywhere} .project-card .hint{font-size:12px} button,a{touch-action:manipulation}

.project-card .card-desc{display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.card-next{min-height:56px}

.detail-sheet{overflow:hidden}.sheet-header,.sheet-grabber{flex-shrink:0}.sheet-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}
#documentList a{overflow-wrap:anywhere;text-align:center} .control-row>*{min-width:0}
@media(max-width:650px){html,body{width:100%;overflow-x:clip}.detail-sheet{top:6dvh;bottom:auto;left:0;right:auto;width:100vw;max-width:100%;height:94dvh}.sheet-scroll{overscroll-behavior:contain}}

.yurt-brand{display:block;object-fit:contain;flex-shrink:0;border-radius:50%}.yurt-brand.big{width:76px;height:76px}
.mobile-brand{display:flex;gap:10px;align-items:center;margin-bottom:10px}.mobile-brand img{border-radius:50%}.mobile-brand .eyebrow{margin:0}
.install-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:16px 0}
.install-controls p{flex-basis:100%;margin:0}.install-help{border:1px solid #cde7df;background:#edf7f3;color:#155f52;border-radius:10px;padding:12px;font-size:12px;min-height:44px}

.resume-preview{padding:12px 14px;border:1px solid #dce9e5;border-radius:9px;background:#f5faf8;overflow-wrap:anywhere;max-height:220px;overflow-y:auto;white-space:pre-line}.chat-settings{margin-top:12px}.chat-settings summary{cursor:pointer;color:#16675c;font-size:12px;font-weight:700;padding:10px 0}.chat-settings label{display:block;margin:8px 0;color:#526e77;font-size:12px;font-weight:680}.chat-settings label input,.chat-settings label textarea{display:block}
