:root{--ink:#18334f;--muted:#607386;--accent:#0065bd;--paper:#f4f7fb;--border:#d7e1eb;--soft:#edf4fc}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.5 "Segoe UI",Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;background:white;border:1px solid var(--border);border-radius:7px;padding:9px 13px;color:var(--ink)}button:hover{background:var(--soft);border-color:#87acd0}button:focus-visible,input:focus,textarea:focus,select:focus,summary:focus-visible{outline:2px solid #0065bd;outline-offset:2px}button.primary{background:var(--accent);color:white;border-color:var(--accent)}button:disabled{cursor:default;opacity:.5}header{height:76px;background:white;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:18px;padding:0 34px}.brand{text-decoration:none;color:var(--ink);font-size:20px;font-weight:650;display:flex;gap:12px;align-items:center}.mark{background:var(--accent);color:white;padding:3px 9px;border-radius:9px;font-family:Georgia,serif;font-size:25px}.prototype{font-size:11px;color:var(--muted);border:1px solid var(--border);border-radius:20px;padding:4px 9px}.tools{margin-left:auto;display:flex;gap:9px;align-items:center}#saveStatus{font-size:12px;color:var(--muted);margin-right:10px}.intro{padding:26px 34px 20px;display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:var(--accent);margin:0 0 7px}h1{font-family:Georgia,serif;font-weight:400;font-size:32px;margin:0}p{margin:8px 0;color:var(--muted)}.identity{width:200px}.identity small{font-size:11px;color:var(--muted)}label{display:block;font-size:12px;font-weight:600;margin-bottom:5px}input,textarea,select{width:100%;background:white;color:var(--ink);border:1px solid var(--border);border-radius:6px;padding:9px 10px}textarea{resize:vertical;min-height:78px}.steps{display:flex;gap:16px;align-items:center;margin:0 34px 20px;font-size:12px;color:#74869a}.steps b{font-weight:600;margin-left:7px}.steps .active{color:var(--accent)}.divider{width:38px;height:1px;background:var(--border)}#lockLabel{font-size:10px;background:#e8eff7;padding:3px 6px;border-radius:4px;margin-left:5px}.localNote{margin-left:auto;font-size:11px}main{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(390px,1fr);gap:22px;margin:0 34px 24px;align-items:start}.planPanel,.workPanel{background:white;border:1px solid var(--border);border-radius:12px;overflow:hidden}.planToolbar{padding:16px;display:flex;justify-content:space-between;align-items:center;gap:12px}.planToolbar select{min-width:185px}.zoom{display:flex;align-items:center;gap:5px}.zoom button{padding:6px 10px}.zoom span{width:43px;text-align:center;font-size:11px}.planViewport{height:440px;overflow:auto;background:#eef3f8;border-block:1px solid var(--border);display:block}.planViewport img{display:block;max-width:none;width:100%;height:auto}.planFooter{display:flex;justify-content:space-between;gap:12px;font-size:10px;color:var(--muted);padding:12px 16px}.roomReference{padding:0 16px 15px}summary{cursor:pointer;font-size:12px;font-weight:600}.roomReference input{margin-top:10px}#directory{max-height:190px;overflow:auto;font-size:12px}.roomLine{padding:7px 0;border-bottom:1px solid #e9eff5}.roomLine small{float:right;color:var(--muted)}.workPanel{padding:23px}h2{font-size:21px;line-height:1.3;margin:0 0 8px;font-weight:550}h3{font-size:13px;font-weight:650;margin:19px 0 9px}.helper{font-size:12px;color:var(--muted);margin-bottom:17px}.field{margin:13px 0}.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.picker{border:1px solid var(--border);border-radius:7px;overflow:hidden}.picker input.search{border:none;border-bottom:1px solid var(--border);border-radius:0;padding:8px 10px}.choices{max-height:119px;overflow:auto}.choice{display:flex;gap:7px;padding:6px 9px;margin:0;font-size:11px;font-weight:400;align-items:center}.choice:hover{background:var(--soft)}.choice input{width:auto;accent-color:var(--accent)}.choice small{margin-left:auto;color:var(--muted);font-size:10px}.selected{display:flex;gap:5px;flex-wrap:wrap;padding:6px 8px;background:#f7faff;min-height:29px;font-size:10px;color:var(--muted)}.chip{background:#e2effc;border:0;font-size:10px;padding:2px 6px;border-radius:4px}.actions{display:flex;gap:8px;align-items:center;margin-top:17px}.actions .primary{flex:1}.record{border:1px solid var(--border);padding:12px;border-radius:7px;margin:8px 0;background:#fafcff}.record p{color:var(--ink);margin:4px 0;white-space:pre-wrap;font-size:12px;overflow-wrap:anywhere}.record small{font-size:10px;color:var(--muted)}.record button{font-size:11px;padding:4px 8px;margin:7px 4px 0 0}.recordTop{display:flex;justify-content:space-between}.badge{font-size:10px;color:var(--accent)}#stageAction{border-top:1px solid var(--border);padding-top:17px;margin-top:18px}#stageAction button{width:100%}.empty{padding:20px;text-align:center;border:1px dashed var(--border);border-radius:7px;font-size:12px;color:var(--muted)}.sourceText,.definition,.preview{background:var(--soft);padding:11px;border-radius:6px;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.definition{background:#f4f7fb}.preview{margin-top:12px;color:var(--accent)}footer{display:flex;align-items:center;gap:14px;padding:0 34px 22px;font-size:11px;color:var(--muted)}footer span:nth-child(2){margin-left:auto}footer button{font-size:11px;padding:6px 10px}#notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;max-width:80vw;padding:13px 22px;border-radius:8px;box-shadow:0 3px 18px #0002;z-index:10}dialog{border:1px solid var(--border);border-radius:12px;max-width:460px;padding:26px;color:var(--ink)}dialog::backdrop{background:#00335966}.dialogActions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.dangerText{color:#954630}details.frozen{margin-top:18px}details.frozen .record{background:#f3f6fa}@media(min-width:1500px){main{grid-template-columns:1.35fr 1fr}.planViewport{height:580px}}@media(max-width:950px){header{padding:15px 20px;height:auto;flex-wrap:wrap}.tools{flex-wrap:wrap}.intro{padding:20px;gap:15px}.steps{margin:0 20px 15px;flex-wrap:wrap}.localNote{margin:0;width:100%}main{margin:0 20px 20px;grid-template-columns:1fr}.planViewport{height:380px}footer{padding:0 20px 20px;flex-wrap:wrap}}@media(max-width:520px){.prototype,#saveStatus{display:none}.tools{margin:0}.intro{align-items:start;flex-direction:column}h1{font-size:27px}.workPanel{padding:16px}.planToolbar{flex-wrap:wrap}.row{grid-template-columns:1fr}.planViewport{height:270px}footer span:nth-child(2){margin:0}.identity{width:100%}}

@media(min-width:951px){.planPanel{position:sticky;top:18px}}

.accountMain{display:block;max-width:1050px;margin:45px auto;padding:0 20px}.accountMain .workPanel{padding:32px}.accountMain form{max-width:500px;margin-top:20px}.accountMain input,.accountMain select{margin:4px 0 14px}.accountMain #loginForm{max-width:390px}.buttonLink{display:inline-block;background:var(--accent);color:white;padding:9px 15px;border-radius:6px;text-decoration:none}.tableScroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}td,th{text-align:left;padding:10px;border-bottom:1px solid var(--border)}#error{color:#974b31}.helpPanel{margin-bottom:18px;padding:14px;border:1px solid var(--border);border-radius:8px}.helpPanel p{font-size:12px}.guide{max-width:800px;margin:32px auto;padding:30px;background:white;border-radius:12px}.guide h2{margin-top:28px}.guide li{margin-bottom:9px}.serverActions{display:flex;gap:10px;margin-top:14px}.serverActions button{flex:1}.saveError{color:#ac391b!important}

.thesisBanner{padding:25px 34px 22px;background:#fff;border-bottom:1px solid var(--border)}.thesisTitle{font-size:21px;line-height:1.4;font-weight:550;color:#003359;max-width:1120px;margin:7px 0}.thesisAuthor{font-size:12px;color:var(--muted);margin:7px 0 0}.mark{font:600 15px/1.8 "Segoe UI",sans-serif;letter-spacing:.5px}header{height:auto;min-height:76px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}.brand{font-size:18px}.tools a{color:var(--accent)}a{color:var(--accent)}.buttonLink{color:white}.guide h1,.accountMain h1,.intro h1{font-family:"Segoe UI",Arial,sans-serif;font-weight:550}.thesisBanner+.accountMain{margin-top:28px}@media(max-width:950px){.thesisBanner{padding:20px}.thesisTitle{font-size:18px}.brand{font-size:16px}}

.introExample{background:#f4f8fd;margin-top:16px}.introExample summary{font-weight:650;cursor:pointer}.introExample svg{display:block;width:100%;max-width:430px;margin:12px 0}.introExample dl{font-size:13px}.introExample dt{font-weight:650;margin-top:10px}.introExample dd{margin:3px 0 9px;padding-left:10px;border-left:2px solid #0065bd}.introExample p{font-size:13px;line-height:1.55}

.exampleCard{padding:10px 0;border-top:1px solid var(--border)}.exampleCard summary{font-weight:600}.exampleCard p{margin:8px 0}
