:root{--navy:#071b4d;--navy2:#0b2c66;--cyan:#00a0aa;--red:#ef002d;--ink:#12213f;--muted:#667085;--line:#d5deec;--bg:#f3f6fb;--card:#fff;--green:#3f7d45;--amber:#a96800;--radius:14px;--shadow:0 12px 35px rgba(7,27,77,.08)}
*{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;min-height:100vh}a{color:var(--navy2);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:99;background:#fff;padding:.7rem}.app-shell{display:grid;grid-template-columns:300px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--navy),#04102f);color:#fff;padding:1.2rem;display:flex;flex-direction:column}.brand{display:grid;grid-template-columns:112px minmax(0,1fr);gap:.8rem;align-items:center;color:#fff;padding:.5rem 0 .8rem;border-bottom:1px solid rgba(255,255,255,.15);margin-bottom:1.5rem;min-width:0}.brand img{display:block;width:112px;max-width:100%;height:auto;filter:none}.brand span{display:block;min-width:0;font-size:.8rem;line-height:1.15;overflow-wrap:anywhere}.brand strong{display:block;font-size:.95rem;line-height:1.15;white-space:normal}.sidebar nav{display:grid;gap:.35rem}.sidebar nav a{color:#dce6ff;padding:.75rem .9rem;border-radius:9px;font-weight:650}.sidebar nav a:hover{background:rgba(255,255,255,.1);text-decoration:none}.sidebar-bottom{margin-top:auto;border-top:1px solid rgba(255,255,255,.15);padding-top:1rem;display:flex;justify-content:space-between;align-items:end}.sidebar-bottom span{display:grid}.sidebar-bottom small{color:#adc0e8}.link-button{border:0;background:none;color:#fff;text-decoration:underline;cursor:pointer;padding:0}.page{min-width:0}.topbar{background:#fff;border-bottom:1px solid var(--line);padding:1rem 2rem;display:flex;align-items:center;gap:1rem}.topbar h1{font-size:1.35rem;margin:0}.topbar p{margin:.15rem 0 0;color:var(--muted);font-size:.85rem}.menu-button{display:none}.content{padding:1.6rem;max-width:1600px;margin:auto}.page footer{padding:1rem 1.6rem;color:var(--muted);font-size:.8rem;text-align:center}.flash{padding:.9rem 1rem;border-radius:10px;margin-bottom:1rem;background:#eaf6ed;border:1px solid #9bc8a3}.flash.error{background:#fff0f0;border-color:#e9aaaa}.hero-panel,.case-hero{background:linear-gradient(125deg,var(--navy),var(--navy2));color:#fff;border-radius:var(--radius);padding:1.7rem 2rem;display:flex;justify-content:space-between;gap:2rem;align-items:center;box-shadow:var(--shadow);position:relative;overflow:hidden}.hero-panel:after,.case-hero:after{content:"";position:absolute;right:-80px;top:-140px;width:360px;height:360px;border:1px solid rgba(255,255,255,.13);border-radius:50%}.hero-panel h2,.case-hero h2{font-size:clamp(1.5rem,2.5vw,2.5rem);margin:.35rem 0}.hero-panel p,.case-hero p{margin:.3rem 0;color:#dfe8ff}.hero-panel.compact{padding:1.3rem 1.7rem}.eyebrow{font-size:.75rem;letter-spacing:.13em;font-weight:800}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:1rem 0}.stats article{background:#fff;border:1px solid var(--line);border-top:4px solid var(--navy2);padding:1rem 1.2rem;border-radius:var(--radius);box-shadow:var(--shadow)}.stats article.danger{border-top-color:var(--red)}.stats article.amber{border-top-color:#e6a323}.stats article.green{border-top-color:var(--green)}.stats span{color:var(--muted);font-size:.85rem}.stats strong{display:block;font-size:2rem;margin-top:.25rem}.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.2rem;margin:1rem 0;box-shadow:var(--shadow)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.panel h2{margin:.2rem 0;font-size:1.2rem}.workflow-overview{display:grid;grid-template-columns:repeat(7,1fr);gap:.65rem}.workflow-overview article{border:1px solid #bac9e0;border-radius:12px;padding:.9rem;background:linear-gradient(180deg,#f8fbff,#eef4fb);min-height:145px;position:relative}.workflow-overview article:nth-child(4){background:#fff8e8;border-color:#e4c475}.workflow-overview article:nth-child(5){background:#f1f8eb;border-color:#a9c292}.workflow-overview article:nth-child(6){background:#f5f0fb;border-color:#c6b3dc}.workflow-overview h3{font-size:.83rem;min-height:40px}.workflow-overview strong{font-size:1.65rem}.workflow-overview small{display:block;color:var(--muted)}.step-no{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:var(--navy);color:#fff;font-weight:bold}.btn{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:8px;padding:.62rem .9rem;font-weight:700;cursor:pointer}.btn:hover{text-decoration:none;filter:brightness(.98)}.btn.primary{background:var(--navy);border-color:var(--navy);color:#fff}.btn.danger{background:#b42318;border-color:#b42318;color:#fff}.btn.danger:hover{background:#8f1c13}.btn.light{background:#fff;color:var(--navy);position:relative;z-index:1}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.8rem;border-bottom:1px solid #e6ebf3;vertical-align:middle}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#475467;background:#f7f9fc}td small{display:block;color:var(--muted)}.badge,.status-pill{display:inline-flex;padding:.28rem .55rem;border-radius:999px;background:#edf3fb;color:var(--navy2);font-size:.78rem;font-weight:750}.status-pill.closed{background:#e7f5e9;color:#27672f}.text-danger{color:#b42318;font-weight:700}.filterbar,.inline-form{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.form-stack,.form-grid{display:grid;gap:1rem}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.compact{gap:.7rem}.form-grid label,.form-stack label{display:grid;gap:.35rem;font-weight:650;font-size:.88rem}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea,.form-stack input,.filterbar input,.filterbar select,.inline-form input{width:100%;border:1px solid #aebbd0;border-radius:8px;padding:.68rem .75rem;background:#fff;color:var(--ink)}textarea{resize:vertical}.actions{display:flex;justify-content:flex-end;gap:.6rem}.auth-shell{display:grid;place-items:center;background:radial-gradient(circle at top,#edf4ff,#f5f7fb 55%);padding:2rem}.auth-shell .page{width:min(620px,100%)}.auth-shell .topbar,.auth-shell footer{display:none}.auth-shell .content{padding:0}.login-card{background:#fff;border-radius:18px;padding:2rem;box-shadow:0 25px 70px rgba(7,27,77,.16);border-top:7px solid var(--red)}.login-card img{width:min(320px,100%);height:auto}.login-card h2{font-size:1.8rem;margin:1.5rem 0 .3rem}.login-card p{color:var(--muted)}.login-card.wide{width:100%}.case-actions{display:flex;gap:.6rem;align-items:center;position:relative;z-index:1}.case-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin:1rem 0}.case-meta div{background:#fff;border:1px solid var(--line);border-radius:10px;padding:.8rem}.case-meta span{display:block;color:var(--muted);font-size:.78rem}.workflow-tabs{display:grid;grid-template-columns:repeat(7,1fr);gap:.5rem;margin:1rem 0}.workflow-tabs button{border:1px solid #bdc9dc;background:#fff;border-radius:11px;padding:.75rem .45rem;min-height:90px;text-align:left;cursor:pointer;color:var(--ink)}.workflow-tabs button span{display:grid;place-items:center;background:var(--navy);color:#fff;width:25px;height:25px;border-radius:50%;font-weight:bold;margin-bottom:.45rem}.workflow-tabs button strong{font-size:.78rem;line-height:1.2}.workflow-tabs button.active{outline:3px solid rgba(0,160,170,.25);border-color:var(--cyan)}.workflow-tabs button.done{background:#edf7ef;border-color:#89b18f}.workflow-panel{display:none}.workflow-panel.active{display:block}.detail-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:1rem}.item-list,.timeline{list-style:none;padding:0;margin:1rem 0 0}.item-list li{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-top:1px solid #e5eaf2}.item-list small{display:block;color:var(--muted)}.timeline li{border-left:3px solid var(--cyan);padding:0 0 1.2rem 1rem}.timeline span{display:block;color:var(--muted);font-size:.8rem}.timeline p{margin:.5rem 0}.wide{max-width:800px}
@media(max-width:1100px){.workflow-overview,.workflow-tabs{grid-template-columns:repeat(4,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.detail-grid{grid-template-columns:1fr}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;z-index:50;transform:translateX(-105%);transition:.2s;width:min(300px,88vw)}.sidebar.open{transform:none}.menu-button{display:inline-block;border:0;background:#eef3fa;border-radius:8px;padding:.5rem}.content{padding:1rem}.topbar{padding:1rem}.hero-panel,.case-hero{align-items:flex-start;flex-direction:column}.stats,.case-meta,.form-grid{grid-template-columns:1fr}.workflow-overview,.workflow-tabs{grid-template-columns:repeat(2,1fr)}.form-grid .full{grid-column:auto}.case-actions{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.workflow-tabs button small{display:block;margin-top:.35rem;color:var(--muted);font-size:.68rem}.workflow-tabs button.locked{opacity:.62;background:#f1f3f6}.workflow-tabs button.locked span{background:#7b8493}.section-help{margin:.2rem 0;color:var(--muted);font-size:.88rem}.notice{padding:1rem;border:1px solid #9bc8a3;background:#eef8f0;border-radius:10px}.notice.warning{border-color:#e4c475;background:#fff8e8}.workflow-form fieldset{border:1px solid var(--line);border-radius:12px;padding:1rem;margin:0}.workflow-form legend{font-weight:800;color:var(--navy);padding:0 .4rem}.requirements-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.requirement-card{border:1px solid var(--line);border-radius:10px;padding:.85rem;background:#f9fbfe}.requirement-card>strong{display:block;margin-bottom:.65rem}.requirement-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.requirement-form label{font-size:.76rem}.decision-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.decision-card{display:grid!important;grid-template-columns:auto 1fr;align-items:start;border:1px solid var(--line);border-radius:11px;padding:1rem;cursor:pointer}.decision-card input{width:auto!important;margin:.2rem .7rem 0 0;grid-row:1/3}.decision-card strong{display:block}.decision-card span{font-size:.8rem;color:var(--muted)}.decision-card.reject{background:#fff2f0;border-color:#e5aaa4}.decision-card.accept{background:#eef8ec;border-color:#a9c99f}.decision-card.goodwill{background:#fff8e8;border-color:#e4c475}.decision-card.proposal{background:#eef3fb;border-color:#afc0db}@media(max-width:760px){.requirements-grid,.requirement-form,.decision-options{grid-template-columns:1fr}}

.delete-dialog{width:min(620px,calc(100% - 2rem));border:0;border-radius:14px;padding:0;box-shadow:0 24px 70px rgba(0,0,0,.28)}.delete-dialog::backdrop{background:rgba(3,14,43,.65)}.delete-dialog form{display:grid;gap:1rem;padding:1.4rem}.delete-dialog h2,.delete-dialog p{margin:0}.delete-dialog label{display:grid;gap:.4rem;font-weight:700}.delete-dialog input{width:100%;border:1px solid #aebbd0;border-radius:8px;padding:.7rem}

.help-index ol{columns:2;column-gap:2rem;margin-bottom:0}.help-index li{break-inside:avoid;margin:.45rem 0}.help-steps{display:grid;gap:1rem}.help-card{display:grid;grid-template-columns:54px minmax(0,1fr);gap:1rem;scroll-margin-top:1rem}.help-card h2{margin-top:0}.help-card ol{padding-left:1.25rem}.help-card li{margin:.45rem 0;line-height:1.5}.help-number{display:grid;place-items:center;align-self:start;width:48px;height:48px;border-radius:50%;background:var(--navy);color:#fff;font-weight:800}.role-list{display:grid;grid-template-columns:max-content 1fr;gap:.55rem 1rem}.role-list dt{font-weight:800;color:var(--navy)}.role-list dd{margin:0}@media(max-width:760px){.help-index ol{columns:1}.help-card{grid-template-columns:1fr}.role-list{grid-template-columns:1fr}.role-list dd{margin-bottom:.6rem}}
