:root{--lime:#9bd52f;--green:#557e19;--dark:#18251b;--ink:#223126;--muted:#6b786d;--bg:#f4f6f1;--border:#e0e6db;--white:#fff;--radius:18px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Arial,Helvetica,sans-serif;font-size:14px;line-height:1.5}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7da532;outline-offset:3px}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{letter-spacing:-.6px}h1{font-size:42px;line-height:1.12}h2{font-size:27px;line-height:1.2}h3{font-size:19px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;text-transform:uppercase;color:var(--green);margin-bottom:12px}.muted,.quiet{color:var(--muted)}.quiet{font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:11px 17px;border:1px solid var(--border);border-radius:9px;color:var(--ink);background:white;font-weight:600;text-decoration:none;font-size:12px;min-height:42px}.btn:hover{background:#edf3e5}.btn.primary{background:var(--lime);border-color:var(--lime);color:#16200f}.btn.dark{background:var(--dark);color:white;border-color:var(--dark)}.btn.danger{color:#a63328}.btn.small{padding:6px 10px;min-height:30px;font-size:11px}.btn.full{width:100%;justify-content:space-between;margin-top:10px}.pill{display:inline-block;border-radius:20px;padding:4px 9px;font-size:10px;font-weight:700;background:#eff4e8;color:#536c35}.dot{display:inline-block;width:8px;height:8px;border-radius:100%;background:var(--person-color,#9bd52f);margin-right:7px;flex-shrink:0}.person-tag{display:inline-flex;align-items:center;line-height:1.3;font-size:11px;color:#4c5b4d}.person-tag .dot{background:var(--tag-color,#a4afa0)}label{display:block;font-size:12px;font-weight:600;color:#4a5b48}input,select,textarea{display:block;width:100%;background:white;border:1px solid #d6dfd0;border-radius:8px;padding:11px 12px;color:var(--ink);margin-top:6px}input[type=color]{height:42px;padding:4px;max-width:65px}textarea{resize:vertical;min-height:85px;line-height:1.5}form>label{margin:18px 0}.error{background:#fff0ed;border:1px solid #eec0b8;color:#9b352b;border-radius:9px;padding:13px}.signature{font-size:10px;color:#8a9588;line-height:1.8;text-align:center;margin-top:35px}.login-layout{min-height:100vh;display:grid;grid-template-columns:1.1fr 1fr}.login-story{background:var(--dark);color:#f7f9f1;padding:40px 8vw 35px 6vw;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-story:after{content:'↗';font-size:390px;position:absolute;right:-30px;bottom:-80px;color:#9bd52f08;line-height:1;pointer-events:none}.login-brand{width:125px;background:#fff;border-radius:12px;padding:9px 13px}.login-story .eyebrow{color:#b4d987}.login-story h1{font-size:clamp(42px,4.5vw,70px);letter-spacing:-3px;line-height:1.05;margin:26px 0}.login-story em{font-style:normal;color:var(--lime)}.login-story p:not(.eyebrow){font-size:16px;line-height:1.8;color:#aab9a9;max-width:400px}.login-pills{display:flex;gap:8px;margin:25px 0}.login-pills span{border:1px solid #ffffff20;color:#cfdec4;border-radius:20px;font-size:10px;padding:6px 10px}.login-story small{color:#8d9e89;font-size:10px}.login-form{max-width:440px;width:100%;align-self:center;justify-self:center;padding:50px 30px}.login-form h2{font-size:33px;margin-bottom:12px}.login-form>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.8}.auth-page{padding:30px}.auth-card{max-width:560px;margin:5vh auto;background:white;border:1px solid var(--border);padding:35px;border-radius:20px}.auth-logo{width:120px;margin-bottom:25px}.auth-card h1{font-size:30px}.shell{display:grid;grid-template-columns:225px minmax(0,1fr);min-height:100vh}.sidebar{background:#fff;border-right:1px solid var(--border);padding:28px 18px;position:fixed;left:0;top:0;bottom:0;width:225px;display:flex;flex-direction:column;z-index:5}.sidebar-brand{height:82px;display:flex;align-items:center;padding:0 18px}.sidebar-brand img{width:112px;height:70px;object-fit:contain}.sidebar-label{font-size:9px;letter-spacing:2px;color:#9aa392;margin:25px 15px 12px}.nav-btn{width:100%;text-align:left;border:0;background:transparent;padding:12px 13px;color:#77816f;border-radius:10px;margin-bottom:5px;font-size:12px;display:flex;align-items:center;gap:12px;font-weight:600}.nav-btn .symbol{font-size:17px;width:20px;text-align:center}.nav-btn:hover{background:#f5f7ef}.nav-btn.active{background:#ecf5df;color:#46641f}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--border);padding:20px 10px 0}.sidebar-bottom strong{font-size:11px;display:block}.sidebar-bottom small{font-size:9px;color:var(--muted)}.main-wrap{grid-column:2;min-width:0}.topbar{display:flex;align-items:center;justify-content:space-between;padding:20px 36px;background:#ffffffbb;border-bottom:1px solid var(--border);min-height:76px;gap:16px}.breadcrumb{font-size:11px;color:#8c9786}.breadcrumb strong{color:#405333;font-weight:600}.top-actions{display:flex;align-items:center;gap:16px}.avatar{width:32px;height:32px;background:var(--dark);color:#d6f2a9;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;font-size:11px;font-weight:bold}.top-user{display:flex;align-items:center;gap:9px;font-size:11px}.content{max-width:1500px;margin:0 auto;padding:30px 36px}.page-title{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px;gap:18px}.page-title h1{font-size:30px;margin-bottom:7px}.page-title p{font-size:13px;color:var(--muted);margin:0}.page-title .buttons{display:flex;gap:8px}.welcome{background:var(--dark);border-radius:var(--radius);padding:32px 35px;color:white;display:grid;grid-template-columns:1.5fr .7fr;gap:35px;position:relative;overflow:hidden;margin-bottom:24px}.welcome:after{content:'↗';position:absolute;right:12px;bottom:-62px;font-size:280px;line-height:1;color:#ffffff04;pointer-events:none}.welcome .eyebrow{color:#a6ca80}.welcome h1{font-size:37px;margin:0 0 15px;letter-spacing:-1.4px}.welcome h1 span{color:#b4e75d}.welcome p{font-size:13px;color:#bdcbb5;line-height:1.8;max-width:680px}.welcome .btn{margin-top:9px}.welcome-aside{border-left:1px solid #ffffff18;padding-left:30px;align-self:center}.welcome-aside strong{display:block;color:#d1e8b3;font-size:16px;margin-bottom:10px}.welcome-aside p{font-size:12px}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:28px}.stat{border:1px solid var(--border);background:white;border-radius:14px;padding:18px 20px}.stat .label{font-size:10px;color:var(--muted)}.stat strong{display:block;font-size:30px;font-weight:600;letter-spacing:-1px;margin:5px 0}.stat small{font-size:10px;color:#8b9682}.stat .accent{color:#628c28}.section-head{display:flex;align-items:center;justify-content:space-between;margin:24px 0 15px;gap:15px}.section-head h2{font-size:20px;margin:0}.section-head p{font-size:11px;color:var(--muted);margin:5px 0 0}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.sector-card{background:white;border:1px solid var(--border);border-radius:15px;padding:22px;position:relative;overflow:hidden}.sector-card:before{content:'';position:absolute;left:0;top:22px;bottom:22px;width:3px;background:var(--sector-color,#a4b697)}.sector-card h3{font-size:16px;margin:12px 0 10px;line-height:1.35}.sector-card p{font-size:12px;line-height:1.7;color:var(--muted);margin-bottom:19px}.card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #edf0e8;padding-top:14px;gap:10px}.card-bottom small{font-size:10px;color:#8d9985}.sector-index{font-size:10px;color:#9aa88f;font-weight:700}.empty{background:white;border:1px dashed #cddcc0;border-radius:14px;padding:35px;text-align:center;color:#758468;line-height:1.8}.empty h3{color:#435b32;font-size:18px}.empty p{font-size:13px;max-width:550px;margin:0 auto 18px}.panel{background:white;border:1px solid var(--border);border-radius:15px;padding:23px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:13px;background:white}table{border-collapse:collapse;width:100%;text-align:left;font-size:12px}th{font-size:10px;color:#829077;background:#fafbf7;font-weight:600}th,td{padding:14px 17px;border-bottom:1px solid #edf0e9;vertical-align:middle}tr:last-child td{border:0}td strong{font-size:12px}td p{font-size:11px;color:var(--muted);max-width:550px;margin:4px 0 0}.mini-select{font-size:11px;padding:7px;min-width:180px;max-width:260px;margin:0}.filterbar{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:20px 0}.filterbar select{width:auto;min-width:180px;margin:0}.process-card{background:#fff;border:1px solid var(--border);border-radius:15px;padding:22px}.process-card h3{font-size:17px;margin:12px 0}.process-card p{font-size:12px;color:var(--muted)}.process-meta{display:flex;gap:15px;font-size:10px;color:#7d8e70;margin:16px 0}.bar{height:5px;border-radius:10px;background:#edf1e8;margin:13px 0;overflow:hidden}.bar>i{display:block;background:#97cd45;height:100%}.process-flow{display:flex;gap:18px;align-items:stretch;overflow:auto;padding:16px 2px 25px}.flow-step{flex:0 0 220px;padding:18px;background:#f6f9f0;border:1px solid #d6e3c9;border-radius:12px;position:relative}.flow-step:not(:last-child):after{content:'→';position:absolute;right:-17px;top:45%;color:#95b66c}.flow-step b{font-size:10px;color:#82966e}.flow-step h4{font-size:14px;margin:10px 0}.flow-step p{font-size:11px;color:#6c7d60;margin-bottom:8px}.flow-step .pill{background:white}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.detail-grid h4{font-size:12px;color:#405b30;margin:0 0 7px}.detail-grid p{font-size:12px;color:#6f7e65;white-space:pre-wrap;word-break:break-word;margin:0}.process-editor{max-width:1100px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}.form-grid .wide{grid-column:1/-1}.step-editor{background:#fff;border:1px solid #dce6d4;padding:20px;border-radius:14px;margin:15px 0}.step-editor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.step-editor-head strong{font-size:12px;color:#678c3d}.step-editor-head .buttons{display:flex;gap:4px}.step-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:13px}.step-grid .wide{grid-column:1/-1}.editor-footer{position:sticky;bottom:0;background:#f4f6f1ee;padding:18px 0;display:flex;gap:12px;align-items:center;border-top:1px solid var(--border);backdrop-filter:blur(10px)}.task-list{display:grid;gap:12px}.task-item{background:white;border:1px solid var(--border);padding:18px 21px;border-radius:12px;display:flex;gap:20px;justify-content:space-between;align-items:center}.task-item h3{font-size:14px;margin:0 0 5px}.task-item p{font-size:11px;color:var(--muted);margin:0}.due{font-size:11px;white-space:nowrap;color:#6d8359}.due.late{color:#b45b3c}.team-person{padding:23px;background:white;border:1px solid var(--border);border-top:4px solid var(--person-color);border-radius:14px}.team-person h3{font-size:17px;margin:14px 0 4px}.team-person .role{font-size:11px;color:var(--muted)}.team-person p{font-size:12px;color:#6c7e60;line-height:1.7;margin:15px 0}.team-counts{display:flex;gap:20px;border-top:1px solid #edf1e8;margin-top:15px;padding-top:15px;font-size:10px;color:#768869}.team-counts b{font-size:18px;display:block;color:#354a29}.profile-mission{line-height:1.8;color:#5c7151;font-size:14px;max-width:850px}.organogram{padding:30px;background:#e8ede3;overflow:auto;min-height:550px;cursor:grab;border:1px solid #cfdac5;border-radius:14px;touch-action:none}.org-tree{min-width:2650px}.org-ceo{width:270px;margin:0 auto 50px;background:#17251a;color:white;padding:22px;text-align:center;border-radius:14px;border-top:4px solid #9bd52f;position:relative}.org-ceo:after{content:'';position:absolute;height:50px;width:2px;background:#93aa7d;bottom:-50px;left:50%}.org-columns{display:grid;grid-template-columns:repeat(10,1fr);gap:18px;border-top:2px solid #a9b99c;padding-top:30px}.org-column{position:relative}.org-column:before{content:'';position:absolute;height:30px;width:2px;top:-30px;left:50%;background:var(--sector-color)}.org-node{background:white;border-left:4px solid var(--sector-color);border-radius:10px;padding:16px;font-size:12px;margin-bottom:20px;box-shadow:0 4px 12px #1724100c}.org-node h4{font-size:13px;line-height:1.3;margin:0 0 12px}.org-node.task-node{position:relative;margin-left:10px;font-size:11px;border-left-color:var(--task-color);padding:13px}.org-node.task-node:before{content:'';position:absolute;left:-12px;top:-20px;width:8px;height:40px;border-left:2px solid var(--task-color);border-bottom:2px solid var(--task-color)}.org-node.task-node h4{font-size:11px;font-weight:600}.org-node .person-tag{font-size:10px}.notice{padding:14px 18px;border:1px solid #d8e8c1;background:#f1f8e7;border-radius:10px;font-size:12px;color:#536d38;margin-bottom:22px}.notice.warning{background:#fff8e5;border-color:#efdfaa;color:#8b7339}.demo-bar{background:#eef8de;color:#405b21;text-align:center;padding:9px;font-size:11px;display:flex;gap:10px;align-items:center;justify-content:center}.demo-bar select{display:inline-block;width:auto;margin:0;font-size:11px;padding:4px 10px}.toast{position:fixed;bottom:24px;right:25px;z-index:30;max-width:420px;background:#1c3020;color:white;padding:17px 23px;border-radius:12px;box-shadow:0 8px 30px #0002;font-size:13px}.toast.error-toast{background:#8f382d}.loading{padding:80px;text-align:center;color:#728464}.reveal{animation:appear .35s ease both}@keyframes appear{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}.mobile-nav{display:none}.print-only{display:none}.user-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid var(--border)}.user-row:last-child{border:0}.user-row strong{font-size:12px}.user-row p{font-size:11px;margin:4px 0;color:var(--muted)}.mission-editor{background:#fff;border:1px solid var(--border);border-radius:13px;padding:19px;margin-bottom:15px}.mission-editor h3{font-size:14px}.mission-editor textarea{min-height:80px}.mission-top{display:flex;align-items:center;justify-content:space-between}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1600px){.content{padding:40px 50px}.welcome{padding:42px}.welcome h1{font-size:44px}}
@media(max-width:1100px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.shell{grid-template-columns:190px 1fr}.sidebar{width:190px}.content{padding:25px}.topbar{padding:18px 25px}.welcome{grid-template-columns:1fr}.welcome-aside{display:none}.stats{gap:10px}.stat{padding:15px}.stat strong{font-size:25px}}
@media(max-width:760px){.login-layout{grid-template-columns:1fr}.login-story{padding:25px;min-height:350px}.login-story h1{font-size:42px;margin:20px 0}.login-story p:not(.eyebrow){font-size:13px}.login-story small,.login-pills{display:none}.login-brand{width:90px}.login-form{padding:32px 23px}.shell{display:block}.sidebar{position:static;width:auto;padding:14px 18px;display:block}.sidebar-brand{height:45px;padding:0}.sidebar-brand img{height:43px;width:77px}.sidebar-label,.sidebar-bottom{display:none}.sidebar nav{display:flex;overflow:auto;gap:4px;margin-top:14px}.nav-btn{width:auto;white-space:nowrap;padding:8px 10px;font-size:10px;margin:0}.nav-btn .symbol{font-size:13px;width:13px}.topbar{padding:12px 19px;min-height:60px}.top-actions{gap:8px}.top-user{font-size:10px}.content{padding:22px 18px}.welcome{padding:25px;gap:15px}.welcome h1{font-size:30px}.stats{grid-template-columns:repeat(2,1fr)}.stat strong{font-size:28px}.grid-2,.grid-3,.detail-grid,.form-grid{grid-template-columns:1fr}.page-title{flex-direction:column}.page-title h1{font-size:27px}.step-grid{grid-template-columns:1fr 1fr}.step-grid label:first-child{grid-column:1/-1}.task-item{align-items:flex-start;gap:12px}.org-tree{min-width:2650px}.organogram{min-height:450px}.demo-bar{flex-wrap:wrap}.section-head h2{font-size:18px}.signature{font-size:9px}.editor-footer{flex-wrap:wrap}.form-grid .wide{grid-column:auto}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}
@media print{@page{size:A4;margin:15mm}.sidebar,.topbar,.demo-bar,.buttons,.btn,.filterbar,.editor-footer,.no-print{display:none!important}body,.content,.main-wrap,.shell{display:block;background:white;padding:0;margin:0}.welcome{background:white;color:#20351b;border:1px solid #d5dfcc;padding:25px;display:block}.welcome h1,.welcome h1 span{color:#213c16}.welcome p,.welcome .eyebrow{color:#536b47}.welcome:after,.welcome-aside{display:none}.stat,.sector-card,.panel,.team-person,.process-card,.task-item{break-inside:avoid;box-shadow:none}.stats{grid-template-columns:repeat(4,1fr)}.print-only{display:block}.page-title h1{font-size:26px}.process-flow{display:grid;grid-template-columns:repeat(2,1fr);overflow:visible}.flow-step{break-inside:avoid}.flow-step:after{display:none}.organogram{overflow:visible}.org-tree{min-width:0}.org-columns{grid-template-columns:repeat(2,1fr)}.org-column{break-inside:avoid}.signature{margin-top:25px}}

.organogram{height:66vh;min-height:450px}.filterbar input[type=range]{padding:0;accent-color:#82b926;width:160px}.org-tree{transform-origin:top left}
