:root{--teal800:#115e59;--teal700:#0f766e;--teal600:#0d9488;--emerald700:#047857;--sky700:#0369a1;--slate100:#f1f5f9;--slate200:#e2e8f0;--slate300:#cbd5e1;--slate500:#64748b;--slate700:#334155;--slate900:#0f172a;--amber700:#b45309;--red700:#b91c1c}*{box-sizing:border-box}html,body{margin:0;background:var(--slate100);color:var(--slate900);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-text-size-adjust:100%}.app{max-width:560px;margin:0 auto;min-height:100vh;display:flex;flex-direction:column}.hdr{margin:8px 12px 0;background:var(--teal800);color:#fff;padding:12px 14px;border-radius:10px;box-shadow:0 1px 3px #0003;display:flex;justify-content:space-between;align-items:center;gap:8px}.hdr b{font-size:17px}.hdr small{display:block;font-size:12px;opacity:.85;margin-top:2px}.pill{font-size:11px;padding:3px 8px;border-radius:999px;background:var(--teal700);border:1px solid var(--teal600);white-space:nowrap}.pill.off{background:#fde68a;color:#78350f;border-color:#f59e0b}.body{flex:1;padding:12px 12px 100px}.card{background:#fff;border:1px solid var(--slate200);border-radius:14px;box-shadow:0 1px 3px #00000014;padding:14px;margin-bottom:12px}.card h3{margin:0 0 6px;font-size:15px}.muted{color:var(--slate500);font-size:12px}label.lbl{display:block;font-size:12px;color:var(--slate500);margin:12px 0 4px}label.lbl:first-child{margin-top:0}.req:after{content:" ◆";color:var(--teal700)}input[type=text],input[type=password],input[type=number],input[type=date],input[type=time],input[inputmode],textarea,select{width:100%;padding:12px;border-radius:8px;border:1px solid var(--slate300);background:#fff;font-size:17px;color:var(--slate900);min-height:48px;font-family:inherit}textarea{min-height:64px;font-size:16px}.seg{display:flex;gap:6px;flex-wrap:wrap}.seg button{flex:1 1 auto;min-width:30%;min-height:48px;border-radius:10px;border:2px solid var(--slate300);background:#fff;font-size:15px;font-weight:600;color:var(--slate700);padding:8px 10px}.seg button.on{border-color:var(--teal800);background:var(--teal800);color:#fff}.seg.col button{min-width:100%}.row{display:flex;gap:8px;align-items:center}.row>*{flex:1;min-width:0}.unit{flex:0 0 auto!important;color:var(--slate500);font-size:14px;font-weight:600;min-width:20px}.ctr{display:flex;align-items:center;gap:8px}.ctr button{width:56px;height:52px;border-radius:12px;border:2px solid var(--slate300);background:#fff;font-size:26px;font-weight:700;color:var(--slate700);flex:0 0 56px}.ctr input{font-size:28px;font-weight:800;text-align:center;border:none;padding:4px;min-height:0;flex:1;min-width:0}.tog{display:flex;justify-content:space-between;align-items:center;min-height:52px;border:2px solid var(--slate300);border-radius:10px;padding:6px 12px;margin-top:8px;font-weight:600;background:#fff;width:100%;font-size:15px;color:var(--slate900)}.tog .sw{width:52px;height:30px;border-radius:999px;background:var(--slate300);position:relative;transition:.15s;flex:0 0 52px}.tog .sw:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:#fff;transition:.15s}.tog.on{border-color:var(--teal800)}.tog.on .sw{background:var(--teal800)}.tog.on .sw:after{left:25px}.photos{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.ph{position:relative;aspect-ratio:1;border:2px dashed var(--slate300);border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:12px;color:var(--slate500);text-align:center;padding:4px;background:#fff;overflow:hidden}.ph.got{border-style:solid;border-color:var(--emerald700)}.ph img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.ph input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.ph .x{position:absolute;top:4px;right:4px;z-index:2;background:#0f172ab3;color:#fff;border:none;border-radius:999px;width:30px;height:30px;font-size:16px}.ph span{position:relative;z-index:1}.ph.got span{background:#ffffffd9;color:var(--emerald700);font-weight:700;border-radius:6px;padding:2px 6px;margin-top:auto}.foot{position:fixed;left:0;right:0;bottom:0;display:flex;gap:8px;background:var(--slate100);padding:8px 12px calc(8px + env(safe-area-inset-bottom));max-width:560px;margin:0 auto;border-top:1px solid var(--slate200)}.btn{min-height:56px;border:none;border-radius:10px;color:#fff;font-weight:700;font-size:17px;flex:1;padding:0 12px}.btn.pri{background:var(--emerald700)}.btn:disabled{opacity:.5}.btn.sec{background:var(--sky700)}.btn.ghost{background:#fff;color:var(--slate700);border:2px solid var(--slate300);flex:0 0 96px}.btn.danger{background:var(--red700)}.btn.wide{width:100%;margin-top:8px}.hint{font-size:13px;margin-top:6px;font-weight:600}.warn{color:var(--amber700)}.err{color:var(--red700)}.ok{color:var(--emerald700)}.badge{display:inline-block;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.badge.amber{background:#f59e0b1f;border:1px solid rgba(245,158,11,.4);color:var(--amber700)}.badge.green{background:#10b9811f;border:1px solid #10b981;color:var(--emerald700)}.badge.red{background:#b91c1c14;border:1px solid var(--red700);color:var(--red700)}.badge.sky{background:#0369a11a;border:1px solid var(--sky700);color:var(--sky700)}.step{font-size:12px;color:var(--slate500);text-align:center;margin:0 0 8px;letter-spacing:.3px}.big{font-size:40px;font-weight:800;text-align:center;letter-spacing:2px;padding:8px 0}.modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:20px;z-index:10}.modal .card{width:100%;max-width:480px}.rev{width:100%;border-collapse:collapse;font-size:14px}.rev td{padding:8px 4px;border-bottom:1px solid var(--slate200);vertical-align:top}.rev td:first-child{color:var(--slate500);width:42%}.rev td:last-child{font-weight:600;word-break:break-word}.rev tr{cursor:pointer}.rev tr.missing td:last-child{color:var(--red700)}.pick{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}.pick button{border:1px solid var(--slate300);border-radius:999px;padding:8px 12px;font-size:14px;background:#fff;color:var(--slate900);min-height:40px}.list-item{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--slate200)}.list-item:last-child{border-bottom:none}.list-item .l{min-width:0}.list-item .l b{display:block;font-size:15px}.list-item .go{flex:0 0 auto;min-height:44px;padding:0 14px;border-radius:10px;border:none;color:#fff;font-weight:700;background:var(--sky700)}.list-item .go.pri{background:var(--emerald700)}.list-item .go.ghost{background:#fff;color:var(--slate700);border:2px solid var(--slate300)}.ver{font-size:10px;opacity:.6;text-align:center;margin-top:8px}
