:root{font-family:Inter,system-ui,sans-serif;color:#17231f;background:#f1f3ef}*{box-sizing:border-box}body{margin:0}.app{min-height:100vh}button,input{font:inherit}button{cursor:pointer}header{height:68px;background:#fff;border-bottom:1px solid #dde2dc;display:flex;justify-content:space-between;align-items:center;padding:0 5vw;position:sticky;top:0;z-index:20}header>div:first-child{display:flex;flex-direction:column}header strong{font-size:16px}header span{font-size:12px;color:#6d7772}.headerActions{display:flex;align-items:center;gap:14px}.headerActions button{border:1px solid #ccd8d1;background:#fff;border-radius:8px;padding:7px 10px;color:#174c3c;font-weight:750}.online{color:#23734e}.offline{color:#b74032}main{max-width:1280px;margin:auto;padding:22px 5vw 50px}.grid{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px}.panel,aside{background:#fff;border:1px solid #dde2dc;border-radius:16px;overflow:hidden}.hierarchy{align-self:start;position:sticky;top:88px}.hierarchy>h2{margin:0;padding:18px;font-size:18px}.areaGroup{border-top:1px solid #e5eae6}.areaToggle,.sectionToggle{width:100%;border:0;background:#fff;color:inherit;text-align:left;display:flex;align-items:center;justify-content:space-between}.areaToggle{padding:16px 18px}.sectionToggle{padding:13px 14px;background:#f7f9f7}.areaToggle span,.sectionToggle span{display:flex;flex-direction:column;gap:3px}.areaToggle small,.sectionToggle small{color:#758079;font-size:12px}.areaToggle em,.sectionToggle em{font-style:normal;font-size:20px;color:#506159}.areaContent{border-top:1px solid #edf0ed}.sectionGroup{border-top:1px solid #e8ece9}.sectionGroup:first-child{border-top:0}.taskList{padding:5px 10px 10px;background:#fafbfa}.task{width:100%;border:0;border-top:1px solid #edf0ec;background:transparent;padding:13px 8px;display:grid;grid-template-columns:10px 1fr auto;gap:10px;text-align:left;align-items:center;color:inherit}.task:first-child{border-top:0}.task.selected{background:#eaf3ee;border-radius:9px}.task i{width:9px;height:9px;border-radius:50%;background:#aeb5b1}.task i.active{background:#27825b}.task i.blocked{background:#d75a47}.task i.review{background:#d69228}.task i.done{background:#61716b}.task span{display:flex;flex-direction:column}.task small{color:#758079;margin-top:3px}.task em{font-style:normal;font-size:20px}aside{padding:22px}.detailPane>p:first-of-type{font-size:12px;color:#6f7a74;margin:0 0 8px}.detailPane h2{margin:0 0 10px;font-size:28px}.description{color:#57635d}.pill{display:inline-block;font-size:11px;font-weight:800;padding:6px 9px;border-radius:18px;background:#edf1ee}.pill.active{background:#dcf1e5;color:#176341}.pill.blocked{background:#fae4df;color:#9f3327}.pill.review{background:#fff0ce;color:#80560a}.detailTabs{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #e5eae6;border-bottom:1px solid #e5eae6;margin:18px -22px 4px}.detailTabs button{border:0;background:#fafbf9;padding:12px 6px;color:#68736d;font-size:12px;font-weight:750}.detailTabs button+button{border-left:1px solid #e5eae6}.detailTabs button.active{background:#eaf3ee;color:#174c3c;box-shadow:inset 0 -3px #174c3c}.detailTabs span{display:inline-grid;place-items:center;min-width:19px;height:19px;margin-left:3px;border-radius:12px;background:#d9e7df;font-size:10px}.mobileBack{display:none}.requirement{display:grid;grid-template-columns:1fr auto;gap:12px;border-top:1px solid #edf0ec;padding:14px 0}.requirement>div{display:flex;flex-direction:column;gap:8px}.requirement input{padding:8px;max-width:130px}.requirement button{width:max-content;padding:8px 10px;border:1px solid #bdcbc4;background:#fff;border-radius:8px;color:#174c3c;font-weight:700}.requirement>strong{font-size:11px;color:#b34a3c}.requirement>strong.done{color:#21714d}.technicalShortcut{width:100%;padding:12px;border:1px solid #9fb9ac;border-radius:10px;background:#f4f8f5;color:#174c3c;font-weight:800;margin-top:14px}.complete{width:100%;margin-top:10px;padding:13px;border:0;border-radius:10px;background:#174c3c;color:#fff;font-weight:800}.technicalPanel{margin-top:13px}.technicalHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.technicalHeader h3{margin:0}.technicalHeader button{border:0;border-radius:9px;padding:9px 11px;background:#e8f1ec;color:#174c3c;font-weight:800;white-space:nowrap}.technicalCard{display:grid;grid-template-columns:42px 1fr;gap:12px;border:1px solid #dfe6e1;border-radius:13px;padding:14px;margin-top:12px;background:#fcfdfc}.fileIcon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;font-size:19px;font-weight:900;background:#eaf1ed;color:#225f49}.fileIcon.drawing{background:#e8eef8;color:#385f94}.fileIcon.image{background:#f4eade;color:#8a5a20}.fileIcon.document{background:#eee8f5;color:#674a88}.fileIcon.material{background:#fff2d9;color:#8b5f0d}.technicalMeta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.technicalMeta span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#6b7770}.technicalMeta b{font-size:10px;background:#e7eee9;border-radius:12px;padding:4px 7px;color:#405049}.technicalCard h4{margin:5px 0 4px;font-size:15px}.technicalCard p{margin:0;color:#657169;font-size:13px;line-height:1.45}.technicalCard ul{margin:10px 0 0;padding-left:18px;color:#3f4d46;font-size:13px;line-height:1.55}.openResource{border:0;background:transparent;color:#175b43;font-weight:800;padding:9px 0 0}.history>p,.emptyText{color:#68736e}.projectChooser{max-width:760px;min-height:100vh;display:grid;align-content:center;gap:24px}.projectChooser .brand{font-size:34px}.projectChooser section{display:grid;gap:12px}.projectChooser section>button{border:1px solid #d7dfda;border-radius:16px;background:#fff;padding:18px;display:flex;align-items:center;justify-content:space-between;text-align:left;color:inherit}.projectChooser span{display:flex;flex-direction:column;gap:5px}.projectChooser small,.projectChooser em{color:#718078;font-style:normal}.centerState{min-height:100vh;display:grid;place-content:center;text-align:center}.centerState strong{font-size:30px}.centerState button{border:0;border-radius:9px;background:#174c3c;color:#fff;padding:10px 14px}@media(max-width:700px){header{height:62px;padding:0 14px}header strong{font-size:15px;max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.headerActions b{font-size:11px}.headerActions button{display:none}main{padding:12px 10px 28px}.grid{display:block}.hierarchy{position:static;border:0;background:transparent;overflow:visible}.hierarchy>h2{padding:8px 2px 10px;font-size:17px}.areaGroup{border:1px solid #d9e0db;border-radius:12px;background:#fff;margin-bottom:10px;overflow:hidden}.areaGroup+.areaGroup{border-top:1px solid #d9e0db}.areaToggle{padding:16px}.areaContent,.sectionGroup{border-top:1px solid #e7ece8}.sectionToggle{padding:14px 16px;background:#f7f9f7}.taskList{padding:4px 10px 8px}.task{min-height:56px;padding:12px 8px}.detailPane{margin-top:12px;padding:16px;border-radius:12px}.mobileBack{display:inline-block;border:0;background:transparent;color:#174c3c;padding:0 0 12px;font-weight:750}.detailPane h2{font-size:22px}.description{font-size:14px;margin:12px 0}.detailTabs{position:sticky;top:62px;z-index:10;margin:16px -16px 4px}.detailTabs button{padding:13px 4px}.requirement{padding:13px 0}.technicalHeader button{font-size:12px}.technicalCard{grid-template-columns:36px 1fr;padding:12px}.fileIcon{width:34px;height:34px}.complete{position:sticky;bottom:10px;box-shadow:0 4px 18px #174c3c40}.projectChooser{padding:30px 14px}}@media(min-width:701px)and (max-width:1100px){main{padding:18px}.grid{grid-template-columns:320px minmax(0,1fr)}.hierarchy{top:86px}.detailPane h2{font-size:24px}}@media(min-width:1101px){main{max-width:1440px}.grid{grid-template-columns:minmax(420px,.85fr) minmax(560px,1.15fr);gap:24px}.hierarchy{max-height:calc(100vh - 210px);overflow:auto;position:sticky;top:92px;align-self:start}aside{min-height:620px}.hero{display:grid;grid-template-columns:1fr auto;align-items:end}.hero small{grid-column:1 / -1}}@media(min-width:701px)and (max-width:1100px){header{height:68px;padding:0 24px}main{max-width:none;padding:22px 24px 48px}.hero{padding:24px;border-radius:18px}.hero h1{font-size:clamp(28px,4.5vw,40px)}.grid{grid-template-columns:minmax(300px,.82fr) minmax(390px,1.18fr);gap:16px}.panel h2,aside{padding:18px}.hierarchy{max-height:calc(100vh - 190px);overflow-y:auto;position:sticky;top:84px;align-self:start}.task{min-height:58px;padding:14px 10px}.detailTabs{margin-left:-18px;margin-right:-18px;position:sticky;top:68px;z-index:8}.detailTabs button{min-height:48px}.requirement{min-height:74px;align-items:center}.requirement input[type=checkbox]{width:24px;height:24px}.requirement input:not([type=checkbox]){min-height:44px;font-size:17px}.requirement button,.technicalShortcut,.complete{min-height:46px}.technicalCard{padding:16px}}@media(max-width:700px){:root{background:#f4f5f2}body{padding-bottom:env(safe-area-inset-bottom)}header{height:62px;padding:0 16px}header strong{font-size:19px}header span{max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.headerActions{gap:8px}.headerActions b{font-size:10px}.headerActions button{display:none}main{padding:12px 12px calc(32px + env(safe-area-inset-bottom))}.hero{padding:18px;border-radius:16px;margin-bottom:12px}.hero p{margin:0 0 5px}.hero h1{font-size:27px;line-height:1.08;margin:4px 0 12px}.hero small{display:block;line-height:1.45}.grid{display:flex;flex-direction:column;gap:12px;margin-top:0}.panel,aside{border-radius:15px}.panel h2,aside{padding:16px}.hierarchy>h2{font-size:18px}.areaGroup{padding-top:12px}.areaGroup>h3{padding:0 14px 8px;font-size:16px}.sectionGroup{padding:0 8px 9px}.sectionGroup>h4{margin:7px 6px}.task{min-height:62px;padding:13px 8px;border-radius:10px}.task.selected{box-shadow:inset 3px 0 #174c3c}.task span b{font-size:15px;line-height:1.25}.task small{font-size:12px}aside>p:first-child{line-height:1.45;margin-bottom:8px}aside>h2{font-size:25px;line-height:1.12;margin:7px 0 10px}aside>p{line-height:1.5}.detailTabs{margin:18px -16px 8px;position:sticky;top:62px;z-index:12;box-shadow:0 6px 12px #16231f0f}.detailTabs button{min-height:50px;padding:8px 4px;font-size:11px}.detailTabs span{display:none}.requirement{grid-template-columns:1fr;gap:8px;padding:16px 0}.requirement>strong{justify-self:start;order:-1;padding:4px 8px;border-radius:12px;background:#fae7e2}.requirement>strong.done{background:#e0f1e7}.requirement>div{gap:10px}.requirement>div>b{font-size:16px;line-height:1.35}.requirement label{display:flex;align-items:center;gap:10px;min-height:44px}.requirement input[type=checkbox]{width:28px;height:28px;flex:0 0 auto}.requirement input:not([type=checkbox]){width:100%;max-width:180px;min-height:48px;border:1px solid #b9c8c0;border-radius:10px;font-size:18px}.requirement button{width:100%;min-height:48px}.technicalShortcut,.complete{min-height:52px;border-radius:12px;font-size:16px}.complete{position:sticky;bottom:calc(8px + env(safe-area-inset-bottom));z-index:10;box-shadow:0 8px 24px #174c3c3d}.technicalHeader{align-items:center}.technicalHeader>div{min-width:0}.technicalHeader button{min-height:42px}.technicalCard{grid-template-columns:38px 1fr;padding:14px 12px}.technicalMeta{flex-wrap:wrap}.technicalCard h4{font-size:16px}.technicalCard p,.technicalCard ul{font-size:14px}.fileIcon{width:36px;height:36px}.projectChooser{min-height:100dvh;padding:28px 14px;align-content:center}.projectChooser section>button{min-height:88px;padding:16px}}@media(max-width:380px){header span{max-width:170px}.hero h1{font-size:24px}.detailTabs button{font-size:10px}aside>h2{font-size:22px}}
