:root{font-family:Inter,"Noto Sans TC",system-ui,sans-serif;color:#17243b;background:#f1f5f9}*{box-sizing:border-box}body{margin:0}.shell{max-width:1100px;margin:auto;padding:44px 22px}header{margin-bottom:26px}h1{font-size:clamp(2rem,5vw,3.2rem);margin:10px 0}h2{font-size:1.3rem;margin:0 0 22px}.eyebrow{font:700 .72rem/1.4 ui-monospace,monospace;letter-spacing:.12em;color:#355f9e}p{line-height:1.6}.notice{padding:14px 18px;border-left:4px solid #2563eb;background:#e5efff;margin-bottom:24px}.columns{display:grid;grid-template-columns:1fr 1.15fr;gap:22px}.panel{background:#fff;border:1px solid #cbd5e1;border-radius:16px;padding:28px;min-width:0}.panel label{display:block;font-weight:650;margin:20px 0 8px}select{width:100%;height:48px;padding:0 12px;border:1px solid #94a3b8;border-radius:8px;background:white;font:inherit;color:inherit}.sample-photo{margin:24px 0;padding:14px;border:1px dashed #94a3b8;border-radius:8px;display:flex;gap:14px;align-items:center}.sample-photo span{font-size:2.2rem;color:#2563eb}.sample-photo strong,.sample-photo small{display:block}.sample-photo small,.hint,.record small{color:#475569}.actions{display:flex;gap:10px}button{min-height:46px;border:0;border-radius:8px;padding:10px 16px;background:#1d4ed8;color:white;font:600 1rem/1.3 Inter,"Noto Sans TC",system-ui,sans-serif;cursor:pointer}.secondary{background:#c2410c}button:disabled{opacity:.55;cursor:wait}button:focus-visible,select:focus-visible{outline:3px solid #f59e0b;outline-offset:2px}.panel-head{display:flex;justify-content:space-between;align-items:start;gap:12px}.panel-head h2{margin:5px 0}.text-button{background:none;color:#1d4ed8;text-decoration:underline;font-size:.9rem}.records{margin-top:22px}.record{padding:15px 0;border-top:1px solid #e2e8f0}.record strong,.record small{display:block}.record small{margin-top:5px}.empty{padding:25px 0;color:#475569}#status{min-height:1.5em;font-weight:600}@media(max-width:740px){.columns{grid-template-columns:1fr}.shell{padding:28px 16px}.panel{padding:22px}.actions button{flex:1}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
:root{--notice-border:#cbd5e1}.notification{white-space:pre-line;background:#f1f5f9;border:1px solid var(--notice-border);border-radius:8px;padding:15px;line-height:1.7}.panel h3{font-size:1rem;margin:28px 0 8px}
