:root{color-scheme:light;--blue:#187de5;--ink:#192f4d;--muted:#61728a;--line:#e1e8f1;--bg:#f4f8fd;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:0;border-radius:12px;padding:12px 18px;background:var(--blue);color:white;font-weight:600;cursor:pointer;text-align:center}button:hover,.button:hover{filter:brightness(.97);text-decoration:none}button:disabled{opacity:.55;cursor:wait}.quiet,.secondary{background:#eaf2fc;color:var(--ink)}.danger{background:#fff0f0;color:#a82c3c}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #74b7ff;outline-offset:3px}.header{padding:18px max(24px,calc((100vw - 1120px)/2));background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:28px;min-height:86px}.brand{font-size:28px;letter-spacing:-1px;font-weight:800;color:var(--ink)}.brand span{color:var(--blue)}nav{display:flex;gap:24px;flex:1}nav a{color:var(--muted);font-size:15px}#logout{margin-left:auto}main{max-width:1120px;margin:38px auto 64px;padding:0 24px;min-height:55vh}h1{font-size:clamp(28px,4vw,42px);line-height:1.15;letter-spacing:-1px;margin:14px 0}h2{font-size:22px;margin:0 0 16px}h3{margin:0;font-size:19px;overflow-wrap:anywhere}p{line-height:1.6;overflow-wrap:anywhere}.muted,.hint{color:var(--muted)}.hint{font-size:14px;margin:8px 0}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.4px;text-transform:uppercase;color:var(--blue)}.hero{margin-bottom:28px;max-width:780px}.bar,.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.bar{justify-content:space-between;margin-bottom:24px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card,.panel{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;overflow:hidden;min-width:0}.card{display:flex;flex-direction:column;gap:14px}.card .actions{margin-top:auto}.panel{max-width:720px;margin:24px 0}.login{max-width:480px;margin:50px auto}.login .panel{padding:30px}form{display:grid;gap:18px}label{display:grid;gap:8px;font-weight:600;font-size:14px}input,select,textarea{width:100%;min-width:0;border:1px solid #cfdae8;padding:12px;border-radius:10px;background:white;color:var(--ink);font-weight:400;min-height:46px}textarea{resize:vertical;min-height:96px}.row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.price{font-size:21px;font-weight:650;margin:0}.tag{display:inline-flex;align-self:flex-start;max-width:100%;border-radius:20px;background:#edf3fa;padding:6px 12px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.item-image{width:100%;height:180px;object-fit:contain;border-radius:14px;background:#f8fafc}.wish-hero{display:grid;grid-template-columns:1fr 1.2fr;gap:30px}.wish-hero .item-image{height:340px}.wish-hero .panel{margin:0}.empty{padding:36px;border:1px dashed #c2d1e5;border-radius:20px;max-width:720px}.message{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);max-width:min(680px,calc(100vw - 28px));padding:14px 20px;border-radius:14px;background:#192f4d;color:white;box-shadow:0 8px 32px #192f4d30;z-index:20}.message.error{background:#8d2839}.loading{padding:32px;color:var(--muted)}footer{display:flex;justify-content:center;gap:24px;padding:28px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}[hidden]{display:none!important}.divider{height:1px;background:var(--line);margin:28px 0}.link-copy{word-break:break-all}.intro{max-width:680px}.editor{max-width:720px}.request{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:14px}.section{margin-top:30px}.reserved{background:#fff4df;color:#805a18}.available{background:#e7f6ee;color:#276b46}@media(max-width:900px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header{gap:18px}nav{gap:14px}}@media(max-width:600px){.header{padding:14px 18px;gap:12px;flex-wrap:wrap}.brand{font-size:25px}nav{order:3;flex-basis:100%;justify-content:space-between;padding-top:6px}#logout{padding:8px 12px;min-height:40px}main{padding:0 18px;margin:24px auto 40px}.grid,.row,.wish-hero{grid-template-columns:1fr}.card,.panel{padding:20px;border-radius:16px}.bar{align-items:flex-start}.wish-hero .item-image{height:240px}.login{margin:32px auto}.login .panel{padding:22px}.actions>*{flex-grow:1}footer{gap:14px;flex-wrap:wrap}}
