:root,:root[data-theme=light]{--coral-50: #fef1ec;--coral-100: #fce0d6;--coral-300: #f79c82;--coral-500: #f26b4e;--coral-600: #de5236;--coral-700: #c24027;--bg: #fff9f4;--surface: #ffffff;--surface-2: #fbf1e9;--ink: #362419;--ink-soft: #6e5849;--ink-faint: #a6907f;--line: #f0e0d4;--green-50: #e9f6ef;--green-500: #3fa372;--green-600: #2f8a5d;--gold: #f2b84b;--red: #d64545;--on-coral: #ffffff;--shadow: 0 1px 2px rgba(54, 36, 25, .06), 0 8px 24px rgba(54, 36, 25, .08);--shadow-lg: 0 4px 12px rgba(54, 36, 25, .1), 0 16px 40px rgba(54, 36, 25, .14);--r-s: 10px;--r-m: 16px;--r-l: 24px;--pill: 999px;--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 20px;--sp-6: 24px;--sp-8: 32px}@media(prefers-color-scheme:dark){:root{--coral-50: #3a2119;--coral-100: #4a2a1f;--coral-300: #b85a40;--coral-500: #f5765a;--coral-600: #f78d74;--coral-700: #faa890;--bg: #1e140e;--surface: #2a1d14;--surface-2: #33241a;--ink: #f7ede4;--ink-soft: #cbb4a3;--ink-faint: #957f6d;--line: #3d2c1f;--green-50: #1e3328;--green-500: #4fba85;--green-600: #6bcb9b;--gold: #f2c463;--red: #e36a6a;--on-coral: #2a130c;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .35), 0 16px 40px rgba(0, 0, 0, .45)}}:root[data-theme=dark]{--coral-50: #3a2119;--coral-100: #4a2a1f;--coral-300: #b85a40;--coral-500: #f5765a;--coral-600: #f78d74;--coral-700: #faa890;--bg: #1e140e;--surface: #2a1d14;--surface-2: #33241a;--ink: #f7ede4;--ink-soft: #cbb4a3;--ink-faint: #957f6d;--line: #3d2c1f;--green-50: #1e3328;--green-500: #4fba85;--green-600: #6bcb9b;--gold: #f2c463;--red: #e36a6a;--on-coral: #2a130c;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .35), 0 16px 40px rgba(0, 0, 0, .45)}*{box-sizing:border-box}body{font-family:ui-rounded,SF Pro Rounded,-apple-system,system-ui,Segoe UI,sans-serif;background:var(--bg);color:var(--ink);margin:0;padding:var(--sp-6);font-size:15px;line-height:1.45;-webkit-font-smoothing:antialiased}.t-display{font-size:28px;line-height:34px;font-weight:800;letter-spacing:-.02em}.t-title{font-size:22px;line-height:28px;font-weight:700;letter-spacing:-.01em}.t-heading{font-size:17px;line-height:22px;font-weight:700}.t-body{font-size:15px;line-height:22px;font-weight:400}.t-label{font-size:13px;line-height:18px;font-weight:600}.t-caption{font-size:12px;line-height:16px;font-weight:500;color:var(--ink-faint)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:none;cursor:pointer;border-radius:var(--pill);font:inherit;font-weight:700;text-decoration:none;height:44px;padding:0 22px;font-size:15px;transition:transform .06s ease,background .15s ease}.btn:active{transform:scale(.97)}.btn-l{height:52px;padding:0 28px;font-size:16px}.btn-s{height:36px;padding:0 16px;font-size:13px}.btn-primary{background:var(--coral-500);color:var(--on-coral);box-shadow:var(--shadow)}.btn-primary:hover{background:var(--coral-600)}.btn-secondary{background:var(--coral-50);color:var(--coral-600)}.btn-ghost{background:transparent;color:var(--coral-600)}.btn-success{background:var(--green-500);color:#fff}.btn-danger{background:transparent;color:var(--red);box-shadow:inset 0 0 0 1.5px var(--red)}.btn[disabled]{background:var(--surface-2);color:var(--ink-faint);box-shadow:none;cursor:not-allowed}.btn-icon{width:44px;padding:0;border-radius:var(--pill)}.fab{width:60px;height:60px;border-radius:20px;border:none;cursor:pointer;background:var(--coral-500);color:var(--on-coral);display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg);font-size:26px}.field{display:flex;flex-direction:column;gap:6px}.field label{font-size:13px;font-weight:700;color:var(--ink-soft)}.input,textarea.input{width:100%;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);border-radius:var(--r-m);padding:13px 16px;font:inherit;font-size:15px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.input::placeholder{color:var(--ink-faint)}.input:focus{border-color:var(--coral-500);box-shadow:0 0 0 3px var(--coral-100)}.input-error{border-color:var(--red)!important}.hint{font-size:12px;color:var(--ink-faint)}.hint-error{color:var(--red)}.switch{position:relative;width:50px;height:30px;display:inline-block}.switch input{display:none}.switch .track{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--pill);background:var(--line);transition:background .15s ease}.switch .track:after{content:"";position:absolute;top:3px;left:3px;width:24px;height:24px;border-radius:50%;background:var(--surface);box-shadow:0 1px 3px #0003;transition:transform .15s ease}.switch input:checked+.track{background:var(--coral-500)}.switch input:checked+.track:after{transform:translate(20px)}.chip{display:inline-flex;align-items:center;gap:6px;border-radius:var(--pill);padding:4px 12px;font-size:12px;font-weight:700}.chip-coral{background:var(--coral-50);color:var(--coral-600)}.chip-green{background:var(--green-50);color:var(--green-600)}.chip-neutral{background:var(--surface-2);color:var(--ink-soft)}.chip-gold{background:color-mix(in srgb,var(--gold) 18%,transparent);color:#a67617}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot-green{background:var(--green-500)}.dot-faint{background:var(--ink-faint)}.card{background:var(--surface);border-radius:var(--r-l);box-shadow:var(--shadow);padding:var(--sp-5);border:1px solid color-mix(in srgb,var(--line) 60%,transparent)}.card-flat{box-shadow:none;border:1.5px solid var(--line)}.appbar{display:flex;align-items:center;gap:12px;padding:14px 16px;background:var(--bg)}.appbar .logo{width:34px;height:34px;border-radius:10px}.avatar{width:34px;height:34px;border-radius:50%;background:var(--coral-100);color:var(--coral-700);display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800}.sheet{background:var(--surface);border-radius:28px 28px 0 0;box-shadow:var(--shadow-lg);padding:12px 20px 28px}.sheet .grab{width:40px;height:4px;border-radius:2px;background:var(--line);margin:0 auto 16px}.ic{display:inline-block;width:20px;height:20px;flex-shrink:0;background:currentColor;vertical-align:-4px;-webkit-mask:var(--i) center / contain no-repeat;mask:var(--i) center / contain no-repeat}.ic-s{width:14px;height:14px;vertical-align:-2px}.ic-l{width:26px;height:26px}.ic-xl{width:56px;height:56px}.ic-plus{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'><path d='M12 5v14M5 12h14'/></svg>")}.ic-check{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'><path d='M5 13l4 4L19 7'/></svg>")}.ic-chev-r{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M9 6l6 6-6 6'/></svg>")}.ic-chev-l{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M15 6l-6 6 6 6'/></svg>")}.ic-pencil{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M4 20l4-1L20 7a2.1 2.1 0 00-3-3L5 16l-1 4z'/></svg>")}.ic-share{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><path d='M12 15V4M8 7l4-4 4 4M5 12v8h14v-8'/></svg>")}.ic-link{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'><path d='M9.5 14.5l5-5'/><path d='M13.5 6.5l2-2a3.54 3.54 0 015 5l-2 2'/><path d='M10.5 17.5l-2 2a3.54 3.54 0 01-5-5l2-2'/></svg>")}.ic-gift{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='3' y='8' width='18' height='4' rx='1'/><path d='M5 12v7a1 1 0 001 1h12a1 1 0 001-1v-7M12 8v12'/><path d='M12 8c-1.5-3-5.5-3.5-5.5-1.5S10 8 12 8zm0 0c1.5-3 5.5-3.5 5.5-1.5S14 8 12 8z'/></svg>")}.ic-copy{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='9' y='9' width='11' height='11' rx='2'/><path d='M5 15V5a2 2 0 012-2h10'/></svg>")}.ic-lock{--i: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='5' y='11' width='14' height='9' rx='2'/><path d='M8 11V7a4 4 0 118 0v4'/></svg>")}.btn .ic{vertical-align:middle}.chip .ic{width:13px;height:13px;vertical-align:-2px}.importance{display:inline-flex;gap:4px;align-items:center}.importance .ic{width:17px;height:17px}.importance .on .ic,.importance .ic.on{color:var(--coral-500)}.importance .off .ic,.importance .ic.off{color:var(--ink-faint);opacity:.45}#app{max-width:480px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column}body{padding:0}.screen{flex:1;padding:4px 16px calc(96px + env(safe-area-inset-bottom))}.fab-pos{position:fixed;right:max(20px,calc(50vw - 220px));bottom:calc(24px + env(safe-area-inset-bottom));z-index:40}@media(hover:hover){.card{transition:transform .12s ease,box-shadow .12s ease}.wl-card:hover,.card[role=button]:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.fab{transition:transform .12s ease,box-shadow .12s ease,background .15s ease}.fab:hover{transform:translateY(-2px);background:var(--coral-600);box-shadow:var(--shadow-lg)}.btn-secondary:hover{background:var(--coral-100)}.btn-ghost:hover{background:var(--coral-50)}}:focus-visible{outline:3px solid var(--coral-300);outline-offset:2px;border-radius:4px}.btn:focus-visible,.fab:focus-visible{outline-offset:3px}@media(min-width:680px){body{background:radial-gradient(1200px 600px at 50% -10%,var(--coral-50),transparent 60%),var(--bg);padding:32px 0}#app{min-height:calc(100dvh - 64px);background:var(--bg);border:1px solid var(--line);border-radius:28px;box-shadow:var(--shadow-lg);overflow:hidden}.fab-pos{position:fixed;right:calc(50vw - 224px);bottom:56px}}
