:root{--ink:#183336;--muted:#66777a;--paper:#f6f2e9;--white:#fff;--teal:#0f6b68;--teal2:#0a4e4c;--gold:#d9a94f;--line:#d7ded9;--soft:#e9f0ec;--warn:#fff4d6;--red:#9b352b;--shadow:0 12px 34px #1634371a}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.loading,.fatal{padding:48px;text-align:center}.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:72px;padding:10px 4vw;background:#fffffff5;border-bottom:1px solid var(--line);backdrop-filter:blur(8px)}.brand{display:flex;align-items:center;gap:11px;border:0;background:none;text-align:left;color:var(--ink)}.mark{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:#fff;font:700 18px Georgia,serif}.brand strong,.brand small{display:block}.brand strong{font:700 19px Georgia,serif}.brand small{margin-top:2px;color:var(--muted);font-size:11px}.nav,.actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.nav button,.ghost,.primary,.danger{border-radius:8px;padding:10px 13px;font-weight:800;border:1px solid transparent}.nav button,.ghost{background:#fff;border-color:var(--line);color:var(--ink)}.nav button.active{background:var(--soft);color:var(--teal2)}.primary{background:var(--teal);color:#fff}.danger{background:#fff;color:var(--red);border-color:#d6a49f}.identity{font-size:12px;color:var(--muted)}.round-banner{position:sticky;top:72px;z-index:40;padding:12px 4vw;display:flex;justify-content:center;align-items:center;gap:18px;background:#fff0bd;border-bottom:2px solid var(--gold)}.round-banner strong{font:700 21px Georgia,serif}.shell{width:min(1450px,92vw);margin:auto;padding:38px 0 80px}.hero{text-align:center;max-width:900px;margin:22px auto 44px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--teal);font-size:11px;font-weight:900}h1,h2,h3{font-family:Georgia,serif}h1{font-size:44px;margin:7px 0 10px}h2{margin:0 0 10px}.lead{font-size:17px;color:var(--muted);line-height:1.55}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.card,.box{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 4px 18px #1634370d}.card{padding:22px;text-align:left;min-height:160px;display:flex;flex-direction:column}.card strong{font:700 21px Georgia,serif}.card span{color:var(--muted);margin-top:8px}.card b{margin-top:auto;color:var(--teal)}.notice{padding:18px 20px;border:1px solid #e6d29c;background:#fff8e8;border-radius:12px;margin-top:22px;line-height:1.5}.heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.heading p{margin:0;color:var(--muted)}.box{padding:20px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.field{display:block;margin-top:13px}.field span{display:block;margin-bottom:5px;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.field input,.field select,.field textarea,.toolbar select,.toolbar input,.login-card input,.login-card select{width:100%;border:1px solid #b8c7c2;border-radius:8px;padding:10px 11px;background:#fff;color:var(--ink)}.field textarea{min-height:90px;resize:vertical}.toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.toolbar select{width:auto;min-width:180px}.cabinet-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}.stage{position:relative;width:min(100%,900px);margin:auto;background:#ddd;border:7px solid #fff;box-shadow:var(--shadow);touch-action:none}.stage>img{display:block;width:100%;height:auto}.hotspot{position:absolute;border:3px solid #fff;border-radius:8px;background:#0f6b6830;box-shadow:0 0 0 2px #0a4e4ce6;color:var(--ink);padding:0}.hotspot.review{border-style:dashed;border-color:#ffe2a8;box-shadow:0 0 0 2px #a96a19}.hotspot.claimed{background:#22946159}.hotspot.selected{z-index:4;background:#efc86d6b;box-shadow:0 0 0 4px #f0bd4f}.hotspot .code{position:absolute;left:-9px;top:-13px;min-width:46px;padding:5px;background:#fff;border:2px solid var(--ink);border-radius:5px;font-weight:950}.hotspot .label{position:absolute;left:3px;right:3px;bottom:3px;padding:3px;border-radius:3px;background:#102c2edb;color:#fff;font-size:9px;font-weight:bold}.hotspot .claim{position:absolute;right:-8px;top:-12px;padding:3px 7px;border-radius:9px;background:#1d865e;color:#fff;border:2px solid #fff;font-size:8px}.resize-handle{position:absolute;right:-7px;bottom:-7px;width:17px;height:17px;border-radius:50%;background:var(--gold);border:2px solid #fff}.side{position:sticky;top:148px;display:grid;gap:12px}.side p{line-height:1.45}.catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.item-card{border:1px solid var(--line);background:#fff;border-radius:13px;overflow:hidden;text-align:left;padding:0;min-height:250px}.item-card img,.image-placeholder{width:100%;height:150px;object-fit:contain;background:#edf0ed}.image-placeholder{display:grid;place-items:center;color:var(--muted)}.item-card .body{padding:13px}.item-card .code{color:var(--teal);font-weight:950}.item-card strong{display:block;margin-top:4px}.item-card small{display:block;color:var(--muted);margin-top:6px}.pref-chip,.claim-chip,.value-chip{display:inline-block;margin:7px 4px 0 0;padding:4px 7px;border-radius:10px;background:var(--soft);font-size:10px;font-weight:bold}.claim-chip{background:#dff3e7;color:#246d4e}.value-chip{background:#fff0c7;color:#6d5420}.modal-backdrop{position:fixed;inset:0;z-index:90;background:#102426b8;display:grid;place-items:center;padding:22px}.modal{position:relative;width:min(1080px,96vw);max-height:92vh;overflow:auto;background:var(--paper);border-radius:16px;box-shadow:0 24px 80px #0006}.modal-close{position:sticky;float:right;top:12px;margin:12px;z-index:4;width:39px;height:39px;border-radius:50%;border:1px solid var(--line);background:#fff;font-size:22px}.modal-inner{padding:26px}.detail-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);gap:24px}.gallery-main{width:100%;height:min(58vh,590px);object-fit:contain;background:#e8ece8;border-radius:12px}.thumbs{display:flex;gap:8px;overflow:auto;margin-top:8px}.thumbs button{border:2px solid transparent;background:#fff;border-radius:8px;padding:3px}.thumbs button.active{border-color:var(--teal)}.thumbs img{width:84px;height:66px;object-fit:cover}.preference-panel{margin:18px 0;padding:16px;background:#fff;border:1px solid var(--line);border-radius:11px}.preference-buttons{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.preference-buttons button{border:1px solid var(--line);border-radius:8px;padding:10px;background:#fff;font-weight:bold}.preference-buttons button.active{background:var(--teal);color:#fff}.participants{display:grid;gap:9px}.participant-row{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:10px;background:var(--soft);border-radius:9px}.participant-order{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--teal);color:#fff;font-weight:bold}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:12px}.table-wrap table{width:100%;border-collapse:collapse;min-width:740px}.table-wrap th{background:#eaf0ed;text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:11px}.table-wrap td{padding:11px;border-top:1px solid var(--line);font-size:12px}.money{font-variant-numeric:tabular-nums;font-weight:bold}.login-backdrop{position:fixed;inset:0;z-index:100;background:#102426b8;display:grid;place-items:center;padding:22px}.login-card{width:min(470px,96vw);background:#fff;border-radius:16px;padding:25px;box-shadow:0 24px 80px #0006}.login-tabs{display:flex;gap:7px;margin-bottom:18px}.login-tabs button{flex:1;padding:10px;border:1px solid var(--line);background:#fff;border-radius:8px;font-weight:bold}.login-tabs button.active{background:var(--soft);color:var(--teal)}.error{color:var(--red);font-weight:bold;margin-top:10px}.muted{color:var(--muted)}.hidden{display:none!important}.file-label{display:inline-block}.file-label input{display:none}.fatal{background:#fee;color:#800}.spinner{opacity:.65;pointer-events:none}
@media(max-width:1050px){.topbar{position:static;align-items:flex-start;flex-direction:column}.nav{width:100%;overflow:auto;flex-wrap:nowrap}.round-banner{position:static}.cards,.catalog{grid-template-columns:1fr 1fr}.cabinet-layout,.detail-grid,.grid2{grid-template-columns:1fr}.side{position:static}.grid3{grid-template-columns:1fr 1fr}}
@media(max-width:620px){h1{font-size:35px}.shell{width:94vw}.cards,.catalog,.grid3{grid-template-columns:1fr}.heading{align-items:flex-start;flex-direction:column}.preference-buttons{grid-template-columns:1fr}.participant-row{grid-template-columns:36px 1fr}.participant-row .actions{grid-column:2}.round-banner{flex-wrap:wrap}}
@media print{@page{size:letter portrait;margin:.3in}.topbar,.round-banner,.toolbar,.side,.modal-backdrop{display:none!important}.shell{width:100%;padding:0}.cabinet-layout{display:block}.stage{height:9.5in;border:0;box-shadow:none}.stage>img{width:auto;max-width:100%;height:100%;object-fit:contain;margin:auto}.hotspot .code{font-size:11pt}.hotspot .label{font-size:6pt}.resize-handle{display:none}}
.hero{text-align:left;max-width:850px;margin:22px 0 34px}.hero .lead{max-width:780px}.context-note{max-width:780px;margin:18px 0 0;padding-left:15px;border-left:3px solid var(--gold);color:var(--ink);line-height:1.55}.access-shell{min-height:100vh;display:grid;place-items:center;padding:28px}.access-card{width:min(620px,100%);padding:34px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}.access-card h1{margin-bottom:14px}.access-card #turnstile-widget{margin-top:24px;min-height:65px}.access-admin{margin-top:20px}.heading.compact{align-items:flex-start;margin-bottom:14px}.status-chip{display:inline-block;white-space:nowrap;padding:6px 9px;border-radius:999px;background:#ecefee;color:var(--muted);font-size:11px;font-weight:800}.status-chip.enabled{background:#dff3e7;color:#246d4e}.network-list{display:grid;gap:8px;margin-top:18px}.network-row{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:10px 12px;background:var(--soft);border-radius:9px}.network-row small{display:block;margin-top:3px}
@media(max-width:620px){.hero{margin-top:10px}.access-card{padding:24px}.heading.compact,.network-row{align-items:flex-start;flex-direction:column}}
.unlock-card{width:min(520px,100%)}.unlock-card .lead{margin-bottom:26px}.unlock-card form{display:grid;gap:12px}.unlock-question{font:700 22px Georgia,serif}.unlock-card input{width:100%;min-height:52px;padding:12px 14px;border:1px solid #9eb0aa;border-radius:9px;background:#fff;color:var(--ink);font-size:20px}.unlock-card button{justify-self:start;min-width:120px}.car-hint{font-family:Arial,Helvetica,sans-serif;font-size:.8em;filter:grayscale(.35)}
.unlock-attempt-note{margin:16px 0 3px;color:var(--muted);font-size:12px}.alternate-unlock-link{min-width:0!important;padding:2px 0!important;border:0;background:none;color:var(--teal);font-weight:800;text-decoration:underline;text-underline-offset:3px}
.unlock-purpose{margin:0 0 22px;padding:14px 16px;border-left:3px solid var(--gold);background:#fff8e8;color:var(--ink);line-height:1.45}.unlock-purpose p{margin:5px 0 0;color:var(--muted);font-size:14px}
.photo-manager{margin:18px 0}.photo-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.photo-heading p{margin:0}.photo-count{min-width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--soft);color:var(--teal2);font-weight:900}.photo-list{display:grid;gap:12px;margin-top:16px}.photo-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:12px;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fbfcfb}.photo-row>img{width:92px;height:92px;object-fit:cover;border-radius:8px;background:#e8ece8}.photo-row .field{margin-top:0}.photo-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.photo-actions .ghost,.photo-actions .danger{padding:8px 10px;font-size:12px}.photo-add{margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.photo-add .field{margin:0 0 9px}.empty-photo-note{padding:14px;border-radius:9px;background:var(--soft);color:var(--muted)}
@media(max-width:620px){.photo-row{grid-template-columns:72px minmax(0,1fr)}.photo-row>img{width:72px;height:72px}.photo-actions{grid-column:1/-1}}
