:root{--ink:#14201c;--ink-soft:#3d4f47;--muted:#6b7c74;--paper:#f3f6f2;--paper-2:#e7eee8;--line:#c8d4cc;--accent:#0f7a5a;--accent-deep:#0a5a42;--accent-soft:#d5efe5;--warn:#9a5b12;--danger:#9b2c2c;--surface:#ffffffb8;--shadow:0 18px 50px #14201c14;--radius:14px;--font-sans:"DM Sans", "Segoe UI", sans-serif;--font-display:"Fraunces", Georgia, serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{font-family:var(--font-sans);color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%, #cfe8dc 0%, transparent 55%), radial-gradient(900px 500px at 100% 0%, #dce8f2 0%, transparent 50%), linear-gradient(180deg, #f7faf7 0%, var(--paper) 40%, #eef3ef 100%);background-attachment:fixed;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-weight:600;line-height:1.15}p{margin:0}.site-shell{width:min(1120px,100% - 2rem);margin:0 auto}.site-header{justify-content:space-between;align-items:center;padding:1.25rem 0;display:flex}.brand{font-family:var(--font-display);letter-spacing:-.03em;align-items:baseline;gap:.15rem;font-size:1.35rem;font-weight:700;display:inline-flex}.brand span{color:var(--accent)}.nav-link{color:var(--ink-soft);font-size:.95rem;font-weight:500;transition:color .16s}.nav-link:hover{color:var(--accent-deep)}.hero{align-content:center;min-height:calc(100vh - 5rem);padding:2rem 0 4rem;display:grid;position:relative;overflow:hidden}.hero:before{content:"";aspect-ratio:1;filter:blur(2px);pointer-events:none;background:linear-gradient(145deg,#0f7a5a38,#0f7a5a0d),radial-gradient(circle at 30% 30%,#ffffff8c,#0000 60%);border-radius:40% 60% 55% 45%;width:min(52vw,520px);animation:12s ease-in-out infinite floatBlob;position:absolute;inset:8% -8% auto auto}.hero-brand{font-family:var(--font-display);letter-spacing:-.04em;margin-bottom:.75rem;font-size:clamp(3.2rem,9vw,6.5rem);font-weight:700;animation:.7s both riseIn}.hero-brand span{color:var(--accent)}.hero h1{max-width:18ch;margin-bottom:.85rem;font-size:clamp(1.35rem,2.8vw,2rem);animation:.7s 80ms both riseIn}.hero p{max-width:38ch;color:var(--ink-soft);margin-bottom:1.75rem;font-size:1.05rem;animation:.7s .14s both riseIn}.home{flex-direction:column;width:min(1120px,100% - 2rem);min-height:100vh;margin:0 auto;display:flex}.home-top{z-index:2;justify-content:space-between;align-items:center;padding:1.25rem 0;display:flex;position:relative}.home-hero{flex:1;grid-template-columns:1.05fr .95fr;align-items:center;gap:2rem;min-height:calc(100vh - 5rem);padding:1rem 0 3rem;display:grid}.home-copy{z-index:1;position:relative}.home-brand{font-family:var(--font-display);letter-spacing:-.045em;margin:0 0 1rem;font-size:clamp(3rem,8vw,5.6rem);font-weight:700;line-height:.95;animation:.7s both riseIn}.home-brand span{color:var(--accent)}.home-copy h1{margin-bottom:.7rem;font-size:clamp(1.6rem,3.5vw,2.4rem);animation:.7s 90ms both riseIn}.home-sub{color:var(--ink-soft);max-width:28ch;margin-bottom:1.6rem;font-size:1.08rem;animation:.7s .15s both riseIn}.home-copy .cta-row{animation:.7s .21s both riseIn}.home-visual{place-items:center;height:min(58vh,460px);animation:.9s 80ms both riseIn;display:grid;position:relative}.ripple{aspect-ratio:1;border:1px solid #0f7a5a47;border-radius:50%;width:42%;animation:3.6s ease-out infinite pulseRing;position:absolute}.ripple.r2{border-color:#0f7a5a2e;width:62%;animation-delay:.7s}.ripple.r3{border-color:#0f7a5a1a;width:84%;animation-delay:1.4s}.phone-mark{border:2px solid var(--ink);background:linear-gradient(180deg, #ffffffbf, #d5efe58c), radial-gradient(circle at 50% 18%, var(--accent) 0 7px, transparent 8px);z-index:1;border-radius:18px;width:92px;height:148px;animation:5.5s ease-in-out infinite floatPhone;position:relative;transform:rotate(-8deg);box-shadow:0 24px 50px #14201c1f}.phone-mark span{background:var(--ink);opacity:.35;border-radius:99px;width:28px;height:4px;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}@keyframes pulseRing{0%{opacity:.7;transform:scale(.86)}70%{opacity:.15}to{opacity:0;transform:scale(1.12)}}@keyframes floatPhone{0%,to{transform:rotate(-8deg)translateY(0)}50%{transform:rotate(-5deg)translateY(-10px)}}@media (max-width:860px){.home-hero{grid-template-columns:1fr;align-content:center;gap:1.5rem}.home-visual{order:-1;height:240px}}.cta-row{flex-wrap:wrap;gap:.75rem;animation:.7s .2s both riseIn;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.4rem;padding:.7rem 1.2rem;font-weight:600;transition:transform .14s,background .14s,border-color .14s,color .14s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-deep)}.btn-ghost{border-color:var(--line);color:var(--ink);background:0 0}.btn-ghost:hover{border-color:var(--accent);color:var(--accent-deep)}.btn-danger{color:var(--danger);background:0 0;border-color:#e8b4b4}.section{padding:4rem 0}.section-head{margin-bottom:1.5rem}.section-head p{color:var(--muted);max-width:50ch;margin-top:.4rem}.feature-list{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1.25rem;display:grid}.feature{padding:.25rem 0}.feature h3{margin-bottom:.35rem;font-size:1.15rem}.feature p{color:var(--ink-soft);font-size:.95rem}.site-footer{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1.5rem 0 2.5rem;font-size:.9rem;display:flex}.admin-page{padding-bottom:4rem}.admin-chip{letter-spacing:.02em;color:var(--muted);border:1px solid var(--line);border-radius:999px;padding:.28rem .7rem;font-size:.78rem;font-weight:600;transition:color .14s,border-color .14s,background .14s}.admin-chip:hover{color:var(--ink);background:#ffffff8c;border-color:#a8b8b0}.lock-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);width:min(360px,100%);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin:5rem auto;padding:1.35rem;animation:.5s both riseIn}.lock-panel .btn{width:100%;margin-top:.25rem}.lock-panel h1{margin-bottom:.4rem;font-size:1.7rem}.lock-panel p{color:var(--muted);margin-bottom:1.25rem}.field{gap:.35rem;margin-bottom:.9rem;display:grid}.field label{color:var(--ink-soft);letter-spacing:.01em;font-size:.82rem;font-weight:600}.field input,.field select,.field textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:10px;padding:.65rem .75rem}.field textarea{resize:vertical;min-height:84px}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.hint{color:var(--muted);font-size:.8rem}.status-line{color:var(--ink-soft);margin-top:.85rem;font-size:.9rem}.status-line.error{color:var(--danger)}.admin-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;margin:1.5rem 0 1.25rem;display:flex}.tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:1.25rem;display:flex}.tab{border:1px solid var(--line);cursor:pointer;color:var(--ink-soft);background:0 0;border-radius:999px;padding:.45rem .9rem;font-size:.9rem;font-weight:600}.tab[data-active=true]{background:var(--ink);border-color:var(--ink);color:#fff}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);margin-bottom:1.25rem;padding:1.25rem}.panel h2{margin-bottom:.35rem;font-size:1.25rem}.panel-lead{color:var(--muted);margin-bottom:1rem;font-size:.92rem}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;display:grid}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;display:grid}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1.25rem;display:grid}.stat{background:linear-gradient(180deg, #fff, var(--paper-2));border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem}.stat strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:1.6rem;display:block}.stat span{color:var(--muted);font-size:.82rem}.toolbar{flex-wrap:wrap;align-items:end;gap:.6rem;margin-bottom:1rem;display:flex}.toolbar .field{flex:1;min-width:180px;margin:0}.table-wrap{border:1px solid var(--line);background:#fff;border-radius:12px;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.88rem}th,td{text-align:left;border-bottom:1px solid var(--paper-2);vertical-align:top;padding:.7rem .8rem}th{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);white-space:nowrap;background:#fafcfb;font-size:.75rem}tr:last-child td{border-bottom:none}.mono{font-family:ui-monospace,Cascadia Mono,Segoe UI Mono,monospace;font-size:.82rem}.pill{background:var(--paper-2);color:var(--ink-soft);border-radius:999px;align-items:center;padding:.15rem .55rem;font-size:.75rem;font-weight:600;display:inline-flex}.pill.on{background:var(--accent-soft);color:var(--accent-deep)}.pill.off{color:var(--danger);background:#f3e2e2}.row-actions{flex-wrap:wrap;gap:.35rem;display:flex}.row-actions .btn{padding:.35rem .7rem;font-size:.8rem}.muted{color:var(--muted)}.ua-cell{word-break:break-word;max-width:280px;color:var(--ink-soft)}.empty{text-align:center;color:var(--muted);padding:1.5rem}.modal-backdrop{z-index:40;background:#14201c73;place-items:center;padding:1rem;animation:.18s fadeIn;display:grid;position:fixed;inset:0}.modal{border:1px solid var(--line);width:min(560px,100%);max-height:min(90vh,860px);box-shadow:var(--shadow);background:#fff;border-radius:16px;padding:1.25rem;animation:.22s riseIn;overflow:auto}.modal-actions{justify-content:flex-end;gap:.5rem;margin-top:.5rem;display:flex}.check-row{align-items:center;gap:.5rem;margin:.5rem 0 1rem;font-size:.92rem;display:flex}@keyframes riseIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes floatBlob{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(-18px,22px)rotate(8deg)}}@media (max-width:760px){.grid-2,.grid-3{grid-template-columns:1fr}.hero{min-height:calc(100vh - 4.5rem);padding-top:1.5rem}.admin-top{align-items:flex-start}}
