:root{--ink:#142e35;--muted:#61747a;--line:#dfe7e4;--green:#0a7669;--paper:#fff;--bg:#f4f6f3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid #329485;outline-offset:5px}.shell{display:grid;grid-template-columns:244px minmax(0,1fr);min-height:100vh}aside{background:#fff;border-right:1px solid var(--line);padding:34px 24px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;letter-spacing:.04em}.brand small{display:block;font-size:9px;letter-spacing:.13em;color:var(--muted)}.logo{display:grid;place-items:center;background:var(--green);color:white;width:46px;height:46px;border-radius:15px;font-size:29px}.nav-label{font-size:10px;letter-spacing:.16em;color:#8b989a;margin:56px 12px 18px}nav{flex-direction:column;gap:8px}nav,nav a{display:flex}nav a{gap:13px;padding:12px 14px;border-radius:10px;font-size:13px}nav .active{background:#e5f0e9;color:var(--green);font-weight:700}.aside-bottom{margin-top:auto;font-size:11px;color:var(--green)}.aside-bottom p{color:var(--muted);padding-top:12px;font-size:13px}.dot{width:8px;height:8px;display:inline-block;border-radius:50%;background:#a6b8b0;margin-right:8px}.dot.green{background:#19955f}main{max-width:1400px;width:100%;padding:48px 4.4vw 24px}header{display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:800;color:var(--green)}.eyebrow,h1{margin:0 0 18px}h1{font-size:clamp(34px,3.7vw,53px);line-height:1.15;letter-spacing:-.05em;font-weight:600}h1 em{font-style:normal;color:var(--green)}h2{font-size:20px;line-height:1.35;margin:0 0 12px}.lead,.muted{color:var(--muted)}.badge{display:inline-block;background:#e7eee4;color:#4a6654;border:1px solid #d7e3d3;border-radius:24px;padding:6px 12px;font-size:10px;letter-spacing:.06em;font-weight:700;white-space:nowrap}.notice{display:flex;gap:22px;background:#fff9e9;border:1px solid #ebe3cc;border-radius:10px;padding:15px 18px;margin:25px 0 30px;font-size:12px;color:#6d5b36}.notice strong{white-space:nowrap}.apps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.app-card,.panel{background:white;border:1px solid var(--line);border-radius:17px;padding:24px}.app-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;gap:12px}.app-icon{font-weight:800;width:44px;height:44px;border-radius:13px;display:grid;place-items:center}.teal{background:#e0eee8;color:#18725f}.orange{background:#f8e9dd;color:#af5927}.purple{background:#eae5f4;color:#7358a8}.caption{font-size:10px;color:var(--muted);letter-spacing:.03em}.app-card p{font-size:13px;color:var(--muted);min-height:43px}.app-path{border-top:1px solid var(--line);margin-top:22px;padding-top:14px;font-size:11px;color:#648075}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.panel{height:100%}.panel h2{font-size:16px;margin-bottom:25px}.status-line{display:flex;align-items:center;font-size:15px}button{padding:12px 18px;color:white;background:var(--green);border:0;border-radius:9px;font:700 12px Arial;cursor:pointer}button:disabled{opacity:.6;cursor:wait}button span{padding-left:20px}dl{margin:0;font-size:12px}dl div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid #edf0ed;gap:12px}dt{color:var(--muted)}dd{margin:0;text-align:right}.roadmap{display:grid;grid-template-columns:1fr 1.7fr;gap:30px;padding:38px 0}.roadmap h2{font-size:26px;line-height:1.4}.roadmap ol{margin:0;padding:0;list-style:none}.roadmap li{display:flex;gap:18px;align-items:flex-start;padding:18px 0;border-bottom:1px solid var(--line)}.roadmap li>span:first-child{font-size:11px;color:var(--green);font-weight:800;margin-top:3px}.roadmap li .badge{margin-left:auto}.roadmap li p{margin:4px 0 0;color:var(--muted);font-size:12px}.roadmap strong{font-size:13px}footer{border-top:1px solid var(--line);padding:22px 0 0;display:flex;justify-content:space-between;gap:15px;font-size:10px;color:var(--muted)}@media(max-width:1100px){.shell{grid-template-columns:195px minmax(0,1fr)}aside{padding:26px 15px}main{padding:32px 24px}.apps-grid{gap:12px}.app-card{padding:18px}header{flex-wrap:wrap}}@media(max-width:800px){.shell{display:block}aside{position:static;height:auto;border:0;border-bottom:1px solid var(--line);padding:16px 22px}.brand{font-size:18px}.aside-bottom,.nav-label{display:none}nav{flex-direction:row;overflow:auto;margin-top:18px}nav a{white-space:nowrap;font-size:11px;gap:7px;padding:8px}.apps-grid,.detail-grid,.roadmap{grid-template-columns:1fr}.app-card p{min-height:0}.notice{flex-direction:column;gap:5px}header{gap:12px}.app-card-top{margin-bottom:15px}footer{flex-wrap:wrap}.roadmap{gap:10px}main{padding:30px 20px}}.login-shell{max-width:650px;margin:0 auto;padding:6vh 24px 24px}.login-card{padding:36px;background:#fff;border:1px solid var(--line);border-radius:24px}.login-card .brand{margin-bottom:40px}.login-card h1{font-size:42px}.login-card form{margin:28px 0}.login-card button{width:100%}form label{display:flex;flex-direction:column;gap:7px;font-weight:700;font-size:12px;margin-bottom:16px}input,select,textarea{width:100%;border:1px solid #c8d8d1;border-radius:9px;padding:12px;font:400 15px/1.4 Arial;color:var(--ink);background:#fff}input:focus,select:focus,textarea:focus{outline:2px solid #329485;outline-offset:2px}textarea{resize:vertical}button.secondary{background:#edf4ef;color:var(--green);border:1px solid #cfdfd6}nav button{text-align:left;background:transparent;color:var(--muted);font-size:13px;padding:14px}.toolbar{display:flex;gap:14px;align-items:end;flex-wrap:wrap;margin-bottom:24px}.toolbar label{margin:0;min-width:160px;flex:1 1}.toolbar button{min-height:45px}.error-box,.success-box{padding:14px 18px;border-radius:10px;overflow-wrap:anywhere}.error-box{background:#fff0ed;color:#9a302c;border:1px solid #f0c7c0}.success-box{background:#e8f3ec;color:#196042;border:1px solid #cbe3d4}.small{font-size:12px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}th{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:var(--muted);background:#f4f7f4}td,th{padding:16px 14px;border-bottom:1px solid var(--line);vertical-align:top}td{overflow-wrap:anywhere}.history-list small,td small{display:block;color:var(--muted);margin-top:4px}td p{margin:7px 0;white-space:pre-wrap}.mono{font-family:monospace;font-size:10px}.state{display:inline-block;border-radius:20px;padding:4px 10px;background:#edf1ee;font-size:11px;white-space:nowrap}.state.pending{background:#fff2cf;color:#80651c}.state.active,.state.approved{background:#e4f4e9;color:#236a45}.state.rejected,.state.suspended{background:#fbe9e5;color:#9b4739}.pagination{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:22px;font-size:11px;color:var(--muted)}.empty-state{padding:38px;text-align:center;color:var(--muted)}.review-panel{margin-top:22px}.review-heading{display:flex;justify-content:space-between;gap:18px;align-items:start}.review-panel form{max-width:650px}.review-panel>h3{border-top:1px solid var(--line);padding-top:24px;margin-top:30px}.confirm-box{padding:18px;border-radius:12px;background:#f3f6ee;border:1px solid #d9e3ce}.history-list{padding-left:22px;font-size:13px}.history-list li{margin-bottom:20px}.history-list p{white-space:pre-wrap;overflow-wrap:anywhere}.mobile-account{display:none}main>footer{margin-top:28px}@media(max-width:800px){nav button{white-space:nowrap}.mobile-account{display:flex;align-items:center;justify-content:space-between;margin-top:20px;font-size:12px}.login-card{padding:25px}.login-card h1{font-size:34px}.pagination{flex-wrap:wrap}td,th{padding:12px 8px;min-width:120px}.review-heading{flex-wrap:wrap}}.shell>main>.panel{height:auto}.review-panel{margin:0 0 24px;scroll-margin-top:20px;border:2px solid #85b5a6}.review-panel:focus{outline:none}.review-panel:focus-visible{outline:3px solid #329485;outline-offset:3px}.profile-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin:20px 0}.profile-fields>div{padding:12px;background:#f4f8f5;border-radius:10px;min-width:0}.profile-fields dt{font-size:12px;color:#5b6f68}.profile-fields dd{margin:6px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.profile-history{padding:16px 0;border-top:1px solid #dce6e0}.profile-history small{display:block;margin-top:6px}.profile-history summary{cursor:pointer;color:#17634c}