:root{--navy:#10365d;--ink:#203b54;--muted:#536b80;--cyan:#0799b4;--paper:#fff;--line:#dce5eb;--wash:#edf3f7;--orange:#a95a14;--good:#186851}
*{box-sizing:border-box}body{margin:0;background:var(--wash);color:var(--ink);font:16px/1.5 "Segoe UI",Arial,sans-serif}button,input,select,textarea{font:inherit}button,.file-button{min-height:46px;border:1px solid var(--line);border-radius:9px;padding:10px 15px;background:#fff;color:var(--navy);font-weight:650;cursor:pointer;display:inline-flex;gap:8px;align-items:center;justify-content:center;text-align:center}button:hover{background:#e9f4f8}button:disabled{opacity:.5;cursor:not-allowed}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--cyan);outline-offset:3px}button.primary{background:var(--navy);border-color:var(--navy);color:white}button.danger{color:#a23b29}button[aria-pressed=true],nav button[aria-current=page]{background:var(--navy);color:white}button.small{font-size:14px;padding:7px 10px;min-height:40px}.top{background:white;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.top-inner{max-width:1220px;margin:auto;padding:13px 22px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{font-size:26px;font-weight:800;color:var(--navy);white-space:nowrap}.brand span{color:var(--cyan)}.top-caption{font-size:14px;color:var(--muted)}.banner{padding:9px 20px;background:#fff3d9;font-size:13px;text-align:center;color:#705119}.workspace{max-width:1220px;margin:26px auto;display:grid;grid-template-columns:220px minmax(0,1fr);gap:26px;padding:0 22px}.sidebar{align-self:start;position:sticky;top:88px}.sidebar nav{display:grid;gap:7px}.sidebar nav button{justify-content:flex-start;border:0;background:transparent}.sidebar nav button[aria-current=page]{background:var(--navy)}.sidebar p{font-size:13px;color:var(--muted);padding:12px}.main{min-width:0;background:white;border:1px solid var(--line);border-radius:16px;overflow:hidden}.casebar{padding:14px 25px;background:#f6f9fb;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;gap:9px;justify-content:space-between;align-items:center}.badge{font-size:12px;padding:4px 9px;border-radius:6px;background:#deedf4;color:var(--navy);font-weight:700}.badge.demo{background:#ffebbf;color:#694713}.save{font-size:13px;color:var(--good)}.save.error{color:#a23b29}.content{padding:30px}.section-head{margin-bottom:25px}.section-head p{max-width:65ch;color:var(--muted);margin:9px 0}h1,h2,h3{line-height:1.2;color:var(--navy);margin:0 0 13px}h1{font-size:35px;letter-spacing:-1px}h2{font-size:28px}h3{font-size:19px}p{max-width:75ch}.hero{background:var(--navy);color:white;padding:32px;border-radius:12px;margin-bottom:23px}.hero h1{color:white}.hero p{color:#d8e6f0}.actions{display:flex;gap:10px;flex-wrap:wrap}.quick{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.quick button{justify-content:flex-start;text-align:left;padding:21px;font-size:18px;min-height:91px}.quick .icon{font-size:28px;width:36px;color:var(--cyan)}.quick small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:4px}.note{font-size:14px;color:var(--muted)}.callout{border-left:4px solid var(--cyan);padding:14px 17px;background:#edf7f9;margin:19px 0}.callout.warning{border-color:#c37b20;background:#fff6e5}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}label.field{display:grid;gap:6px;margin-bottom:15px;font-size:14px;font-weight:600;color:var(--ink)}.field input,.field textarea,.field select{width:100%;min-width:0;border:1px solid #b9cbd8;border-radius:7px;background:white;color:var(--ink);padding:11px;font-size:16px;font-weight:400}.field textarea{min-height:105px;resize:vertical}.field small{font-weight:400;color:var(--muted)}.record{border-top:1px solid var(--line);padding:22px 0}.record:first-child{border-top:0}.record-head{display:flex;gap:10px;justify-content:space-between;align-items:start;margin-bottom:12px}.empty{padding:24px;background:#f5f8fa;border:1px dashed #c7d8e3;border-radius:10px;color:var(--muted)}.check{display:flex;align-items:flex-start;gap:10px;margin:12px 0;font-size:14px}.check input{width:20px;height:20px;flex:none}.file-button input{position:absolute;width:1px;height:1px;opacity:0}.file-button:focus-within{outline:3px solid var(--cyan)}.media-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:25px}.media-card{padding:13px;border:1px solid var(--line);border-radius:10px;overflow:hidden}.media-card img{width:100%;height:170px;object-fit:contain;background:#edf3f7}.media-card h3{overflow-wrap:anywhere;font-size:16px}.status-list{padding:0;list-style:none}.status-list li{padding:11px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:15px}.draw-tools{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.draw-tools button{font-size:14px}.scene{border:1px solid #c6d8e2;border-radius:12px;overflow:hidden;background:#f7fafc;perspective:1000px}.scene svg{display:block;width:100%;height:auto;user-select:none}.scene.editing svg{touch-action:none;cursor:crosshair}.scene.perspective svg{transform:rotateX(22deg);transform-origin:center}.scene.perspective{background:#e1e9ef}.legend{display:flex;gap:20px;flex-wrap:wrap;margin:12px 0;font-size:14px}.legend span:before{content:"";width:10px;height:10px;background:var(--navy);display:inline-block;margin-right:8px;border-radius:50%}.legend span:nth-child(2):before{background:var(--orange)}.timeline{display:flex;gap:12px;align-items:center;margin:20px 0}.timeline input{flex:1;min-width:0}.list-button{display:flex;width:100%;justify-content:space-between;gap:15px;text-align:left;margin:9px 0}.list-button small{display:block;font-weight:400;color:var(--muted)}.version{padding:15px;border:1px solid var(--line);border-radius:9px;margin:12px 0}.doc{font-size:14px;border:1px solid var(--line);padding:20px;overflow-wrap:anywhere}.doc h2{font-size:23px}.doc h3{font-size:18px;border-top:1px solid #ddd;padding-top:18px}.doc svg{max-width:100%;height:auto}.doc img{max-width:100%;max-height:240px}.doc dl{display:grid;grid-template-columns:minmax(100px,1fr) 2fr;gap:7px}.doc dt{color:var(--muted)}.doc dd{margin:0;white-space:pre-wrap}.doc p{white-space:pre-wrap}.doc .attachment{page-break-inside:avoid}.error{color:#a23b29}.footer{max-width:1200px;margin:24px auto;text-align:center;font-size:12px;color:var(--muted);padding:0 20px}#toast{position:fixed;bottom:22px;left:50%;transform:translateX(-50%);z-index:20;background:#102f4d;color:white;padding:14px 20px;border-radius:10px;max-width:min(90vw,620px);box-shadow:0 6px 28px #102f4d33}#print-page{display:none}[hidden]{display:none!important}.phone-mode .workspace{max-width:520px;display:block}.phone-mode .sidebar{position:static;margin-bottom:13px}.phone-mode .sidebar nav{display:flex;overflow-x:auto}.phone-mode .sidebar nav button{white-space:nowrap;flex:none}.phone-mode .sidebar p{display:none}.phone-mode .content{padding:21px}.phone-mode .grid,.phone-mode .media-list{grid-template-columns:1fr}.phone-mode h1{font-size:29px}.phone-mode .top-caption{display:none}.phone-mode .quick{gap:8px}.phone-mode .quick button{padding:13px;font-size:16px;display:block}.phone-mode .casebar{padding:12px 18px}.phone-mode .hero{padding:22px}.phone-mode .draw-tools button{flex:1 1 42%}
@media(max-width:760px){.workspace{display:block;margin:12px auto;padding:0 10px}.sidebar{position:static;margin-bottom:12px}.sidebar nav{display:flex;overflow:auto}.sidebar nav button{flex:none;white-space:nowrap}.sidebar p{display:none}.content{padding:20px}.grid,.media-list{grid-template-columns:1fr}.top-caption{display:none}.top-inner{padding:10px 13px}.top-inner .actions button{font-size:13px;padding:8px}.casebar{padding:12px 18px}.hero{padding:23px}h1{font-size:29px}.quick button{padding:12px;font-size:16px;display:block}.doc{padding:12px}.doc dl{display:block}.doc dd{margin-bottom:10px}.draw-tools button{flex:1 1 42%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media print{body>*{display:none!important}#print-page{display:block!important;color:black;background:white;font:12px/1.5 Arial}#print-page svg{max-width:100%;height:auto}#print-page img{max-width:100%;max-height:240px}#print-page h3{break-after:avoid}#print-page .attachment{break-inside:avoid}#print-page dl{display:grid;grid-template-columns:1fr 2fr}#print-page dd{margin:0}#print-page p{white-space:pre-wrap}}
