:root{--blue:#133b73;--blue2:#1d559b;--yellow:#ffd12f;--ink:#203248;--muted:#66778b;--line:#dbe4ee;--soft:#eef4fa;--paper:#fff;--bg:#f6f8fb;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;line-height:1.6}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid var(--yellow);outline-offset:2px}a{color:var(--blue2)}.shell{max-width:970px;margin:auto;padding:0 18px}.header{background:var(--blue);color:white}.header-row{display:flex;justify-content:space-between;align-items:center;gap:18px;min-height:78px}.brand{display:flex;gap:12px;align-items:center;color:white;text-align:left;background:none;border:0;padding:0}.emblem{display:grid;place-items:center;border-radius:12px;background:var(--yellow);color:var(--blue);font-size:18px;font-weight:950;width:47px;height:47px}.brand strong{display:block;font-size:1.15rem;letter-spacing:.015em}.brand small{display:block;font-size:.65rem;letter-spacing:.14em;color:#d5e2ef}.search-toggle{border:1px solid #6a8abc;background:#1e4b82;color:#fff;border-radius:10px;padding:9px 14px;font-weight:650}.search-toggle:first-letter{font-size:1.4rem}.yellow-rule{height:5px;background:var(--yellow)}.draft{background:#fff9df;border-bottom:1px solid #ead999;color:#665126;font-size:.74rem}.draft .shell{padding-top:10px;padding-bottom:10px;display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}.draft b{color:#6c5106;font-size:.67rem;letter-spacing:.06em}.muted{color:var(--muted)}main{min-height:calc(100vh - 240px);padding-top:29px!important;padding-bottom:60px!important}.eyebrow{font-weight:800;font-size:.72rem;color:var(--blue2);text-transform:uppercase;letter-spacing:.1em;margin:0 0 6px}.title{font-size:clamp(1.6rem,4vw,2.4rem);margin:0 0 9px;color:var(--blue);line-height:1.2}.description{color:var(--muted);font-size:.92rem;margin:0 0 24px}.group-label{color:#5e7085;text-transform:uppercase;letter-spacing:.09em;font-size:.76rem;font-weight:800;margin:27px 0 11px}.tiles{display:grid;gap:10px}.tile{border:1px solid var(--line);background:#fff;border-radius:12px;width:100%;padding:17px 18px;display:flex;gap:14px;text-align:left;align-items:center;box-shadow:0 3px 16px #102a4c08;color:var(--ink)}.tile:hover{border-color:#91b4d9}.tile .symbol{width:46px;height:46px;border-radius:11px;background:#eaf3ff;color:var(--blue2);font-weight:850;display:grid;place-items:center;flex:none}.tile .txt{flex:1;min-width:0}.tile strong{display:block;font-size:1rem;line-height:1.33}.tile small{color:var(--muted);font-size:.77rem;display:block;margin-top:4px}.tile .chev{font-size:1.3rem;color:#8296ad}.back{border:0;background:none;color:var(--blue2);font-weight:750;margin:0 0 16px;padding:0;font-size:.83rem}.card{border:1px solid var(--line);border-radius:14px;background:#fff;padding:clamp(18px,4vw,33px);margin:15px 0}.card h2{margin:0 0 12px;color:var(--blue);font-size:1.25rem}.card h3{margin:23px 0 7px;font-size:1rem;color:var(--blue)}.card p{margin:0 0 13px}.label{font-size:.72rem;font-weight:850;color:#4c6c8e;text-transform:uppercase;letter-spacing:.06em;margin:22px 0 8px}.script{background:#f1f6fc;border-left:4px solid var(--blue2);padding:17px;border-radius:0 9px 9px 0;white-space:pre-line;font-size:.96rem}.caution{background:#fff8df;border:1px solid #eedba0;border-radius:10px;padding:13px 15px;color:#6f581f;font-size:.85rem;margin:16px 0}.refs{padding:0;list-style:none;margin:14px 0}.refs li{margin:6px 0}.reference-btn{border:1px solid #ccddef;background:white;color:var(--blue2);font-weight:700;border-radius:8px;padding:8px 10px;text-align:left;font-size:.81rem}.button{border:0;background:var(--blue);border-radius:9px;color:#fff;padding:11px 15px;font-size:.88rem;font-weight:800}.secondary{border:1px solid #a8c2db;background:white;color:var(--blue);border-radius:9px;padding:10px 15px;font-size:.86rem;font-weight:750}.button-row{display:flex;flex-wrap:wrap;gap:9px;margin:17px 0}.searchbox{display:flex;gap:11px;align-items:center;background:white;border:1.5px solid #9db5d0;border-radius:12px;margin:20px 0;padding:8px 15px}.searchbox input{flex:1;min-width:0;border:0;outline:0;padding:7px;font-size:1rem}.searchhint{color:var(--muted);font-size:.83rem;margin:10px 0 18px}.result{display:block;width:100%;text-align:left;border:1px solid var(--line);background:#fff;border-radius:11px;padding:14px 16px;margin:8px 0;color:var(--ink)}.result:hover{border-color:#8baed3}.result .kind{color:var(--blue2);font-size:.69rem;text-transform:uppercase;font-weight:850;letter-spacing:.05em}.result strong{display:block;margin:5px 0;font-size:.95rem}.result small{color:var(--muted);font-size:.79rem;line-height:1.45;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.source-page{white-space:pre-wrap;font-family:Georgia,"Times New Roman",serif;font-size:.91rem;line-height:1.75;overflow-wrap:anywhere}.select-row{display:flex;gap:11px;flex-wrap:wrap;align-items:center;margin:19px 0}.select-row label{font-weight:700;font-size:.84rem}.select-row select{border:1px solid #aebfcd;border-radius:8px;background:white;padding:8px}.footer,.foot{border-top:1px solid var(--line);padding-top:20px;padding-bottom:30px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;font-size:.73rem;color:var(--muted)}.toast{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);background:var(--blue);color:#fff;padding:12px 17px;border-radius:10px;box-shadow:0 6px 25px #123b7370;font-size:.83rem;max-width:90vw}.empty{border:1px dashed var(--line);border-radius:13px;background:white;text-align:center;color:var(--muted);padding:28px 15px}.tag{display:inline-flex;background:var(--soft);border-radius:99px;padding:5px 10px;font-size:.75rem;color:var(--blue2);font-weight:750}.lang-note{font-size:.84rem;color:#685621;background:#fffae8;border:1px solid #f2e1aa;padding:12px;border-radius:9px;margin:13px 0}.grid-stats{display:flex;gap:9px;flex-wrap:wrap;margin:10px 0 25px}.stat{background:#eaf2fc;border-radius:9px;padding:8px 12px;font-size:.75rem;color:var(--blue2);font-weight:700}.bottom-actions{margin-top:27px}@media(min-width:730px){.cols{grid-template-columns:1fr 1fr}.rights-cols{grid-template-columns:1fr 1fr}}@media(max-width:480px){.shell{padding-left:14px;padding-right:14px}.header-row{min-height:68px}.tile{padding:14px;gap:10px}.tile .symbol{width:42px;height:42px}.tile strong{font-size:.95rem}.search-toggle span{display:none}.draft .shell{gap:3px}.source-page{font-size:.85rem}}
/* Version 2 layout: member first, chapter/section hierarchy, mobile readable contract text. */
:root {--blue:#153a72;--blue2:#2566a0;--yellow:#ffce24;--bg:#f5f8fc;--soft:#e9f1fb;--muted:#61748a;--line:#dbe5f0}
.head-flex {display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px}
.draft .shell {display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap}
.chips {display:flex;gap:7px;flex-wrap:wrap;margin:14px 0 27px}
.chip {font-size:11px;font-weight:750;color:#28587f;background:#e6f0f8;border:1px solid #d7e6f3;padding:7px 10px;border-radius:100px}
.tiles.cols {grid-template-columns:repeat(2,minmax(0,1fr))}
.tiles.single {grid-template-columns:1fr}
.tiles .tile {min-width:0}
.card {overflow-wrap:anywhere}
.card h3{font-size:1.03rem;color:var(--blue);margin:20px 0 11px}
.responses {display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:17px 0}
.response{background:#f0f6fc;border:1px solid #d3e3f2;border-radius:12px;padding:15px;min-width:0}
.response.firm {background:#fffaf0;border-color:#ead7a9}
.response h3{font-size:.95rem;margin:0 0 11px}
.speech{white-space:pre-line;line-height:1.65;margin:0 0 13px!important;font-size:.9rem}
.outline{background:white;color:var(--blue);border:1px solid #b1cadd;border-radius:9px;padding:10px 13px;font-weight:750;font-size:.86rem}
.outline.small{font-size:.76rem;padding:8px 10px}
.detail-list{padding-left:23px;line-height:1.65}
.detail-list li{margin:6px 0}
.reference-list,.button-row {display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.source-link{border-radius:8px;padding:9px 11px;background:#f0f5fa;border:1px solid #c6ddec;color:#235c8d;text-align:left;font-weight:700;font-size:.77rem}
.external-link{margin:13px 0;padding:9px 0;border-top:1px solid #e1e8ef;font-size:.85rem}
.external-link a{font-weight:750}
.tiny{font-size:.79rem;color:#5d7385;line-height:1.55;margin:9px 0}
.law-ref{background:#f8fbfe}
.dialogue{border-radius:12px;padding:16px;line-height:1.65;margin:13px 0!important}
.role-manager{background:#eaf1fa;color:#21486b;border:1px solid #d4e4f3}
.role-worker{background:#fff9ea;color:#72551a;border:1px solid #ecd9a8}
.branch-choices{margin:20px 0}
.branch{border:1px solid #b4cada;background:white;border-radius:11px;text-align:left;color:#1d5582;padding:13px 14px;margin:5px 5px 5px 0;font-weight:700;font-size:.88rem}
.branch.selected{background:#dcecf8;border-color:#366a99}
.branch-result{border-left:3px solid var(--yellow);padding-left:12px;margin:13px 0}
.branch-result:empty{display:none}
.source-article{background:white;border:1px solid var(--line);border-radius:13px;padding:clamp(15px,3.6vw,27px);margin:13px 0;box-shadow:0 2px 10px #122e4d08}
.source-page-label{font-size:.77rem;font-weight:800;color:#245c8e;border-bottom:1px solid #e4e9f0;padding-bottom:10px;margin-bottom:15px}
.doc-text{font-size:clamp(15px,2.6vw,17px);line-height:1.75;color:#263948;max-width:78ch;word-break:normal;overflow-wrap:anywhere}
.doc-text p{margin:0 0 1.15rem;white-space:normal}
.source-page{white-space:pre-line!important}
.lang-note{background:#fff8e6;border-left:4px solid var(--yellow);border-radius:7px;padding:14px}
select,input:not([type='search']){display:block;width:100%;padding:12px;border:1px solid #c4d5e5;border-radius:9px;color:var(--blue);background:white;max-width:460px}
.searchbox input{max-width:none;border:0}
.searchhint{line-height:1.5}
.result .kind{font-size:.69rem;letter-spacing:.07em;color:var(--blue2);font-weight:850}
.result strong{display:block;margin:7px 0 5px}
.result small{display:block;color:var(--muted);font-size:.81rem}
.foot{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding-bottom:22px}
@media(max-width:700px){.tiles.cols,.responses{grid-template-columns:1fr}.head-flex{min-height:65px}.brand strong{font-size:1rem}.brand small{font-size:.58rem}.search-toggle{padding:8px 11px}.search-toggle span{display:none}.response{padding:14px}.tile{padding:13px}.symbol{width:39px;height:39px}.doc-text{font-size:15px;line-height:1.72}.source-article{padding:17px 16px}.card{padding:18px}}
