
:root{--y:#F5D90A;--y2:#FFF6B8;--ink:#111;--ink2:#444;--mut:#6b6b6b;--line:#e6e6e6;--bg:#f6f6f4;--card:#fff;--red:#d92d20;--redbg:#fef1f0;--grn:#16a34a;--grnbg:#ecfdf3;--amb:#b45309;--ambbg:#fff7e6;--r:14px;--safe-b:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.4 -apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);padding-bottom:calc(76px + var(--safe-b))}
body.nologin{padding-bottom:0}
a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}
.boot{display:grid;place-items:center;height:70vh}
#top{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line);padding:calc(env(safe-area-inset-top,0px) + 10px) 16px 10px;display:flex;align-items:center;gap:10px}
#top:empty{display:none}
#top .brand{display:flex;align-items:center;gap:8px;text-decoration:none;min-width:0}
#top .brand img{height:30px;width:auto}
#top .brand b{font-size:15px;font-weight:800;letter-spacing:.02em;background:var(--y);padding:3px 7px;border-radius:6px;white-space:nowrap}
#top .sp{flex:1}
#top .dnav{display:none;gap:4px}
#top .dnav a{padding:8px 12px;border-radius:10px;text-decoration:none;font-weight:600;color:var(--ink2)}
#top .dnav a.on{background:var(--y)}
main{max-width:1400px;margin:0 auto;padding:14px 14px 24px}
h1{font-size:24px;margin:4px 0 12px;letter-spacing:-.01em}h2{font-size:17px;margin:20px 0 8px}h3{font-size:15px;margin:0 0 6px}
.mut{color:var(--mut)}.sm{font-size:13px}.row{display:flex;gap:8px;align-items:center}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:14px;margin:0 0 10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:0 16px;border-radius:12px;border:1px solid var(--line);background:#fff;font-weight:600;cursor:pointer;text-decoration:none;white-space:nowrap;-webkit-tap-highlight-color:transparent}
.btn:active{transform:scale(.98)}
.btn.pri{background:var(--y);border-color:#e3c700;color:#111}
.btn.dark{background:#111;border-color:#111;color:#fff}
.btn.red{background:var(--red);border-color:var(--red);color:#fff}
.btn.ghost{background:transparent;border-color:transparent}
.btn.sm{min-height:38px;padding:0 12px;font-size:14px;border-radius:10px}
.btn.icon{width:46px;padding:0}.btn.sm.icon{width:40px}
.btn.block{width:100%}
.btn[disabled]{opacity:.5}
.field{display:block;margin:0 0 12px}.field>span{display:block;font-size:13px;font-weight:600;color:var(--ink2);margin:0 0 5px}
input[type=text],input[type=email],input[type=tel],input[type=password],input[type=number],input[type=search],input[type=date],input[type=time],input[type=datetime-local],select,textarea{width:100%;min-height:48px;padding:10px 12px;border:1px solid #d4d4d4;border-radius:12px;background:#fff;font-size:16px;-webkit-appearance:none;appearance:none}
select{background-image:linear-gradient(45deg,transparent 50%,#555 50%),linear-gradient(135deg,#555 50%,transparent 50%);background-position:calc(100% - 18px) 21px,calc(100% - 13px) 21px;background-size:5px 5px;background-repeat:no-repeat;padding-right:32px}
textarea{min-height:84px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:2px solid var(--y);outline-offset:1px;border-color:#c9b000}
.two{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;padding:3px 8px;border-radius:999px;background:#f0f0f0;color:#333;white-space:nowrap}
.badge.pos{background:var(--grnbg);color:var(--grn)}.badge.neg{background:var(--redbg);color:var(--red)}
.badge.stage{background:#111;color:#fff}.badge.won{background:var(--grn);color:#fff}.badge.lost{background:#777;color:#fff}
.badge.sample{background:var(--y2);color:#6b5a00}
.lbl{display:inline-flex;align-items:center;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;color:#fff;white-space:nowrap}
#tabs{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--line);display:flex;padding:6px 6px calc(6px + var(--safe-b))}
#tabs:empty{display:none}
#tabs a{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;text-decoration:none;font-size:11px;font-weight:600;color:#777;padding:4px 0;position:relative;min-height:50px;justify-content:center}
#tabs a svg{width:25px;height:25px}
#tabs a.on{color:#111}#tabs a.on svg{stroke:#111}
#tabs a.plus span.pl{width:50px;height:50px;border-radius:50%;background:var(--y);display:grid;place-items:center;margin-top:-18px;border:4px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.15)}
#tabs .bdg{position:absolute;top:0;left:calc(50% + 6px);background:var(--red);color:#fff;font-size:11px;font-weight:800;border-radius:999px;min-width:19px;height:19px;padding:0 5px;display:grid;place-items:center}

.login{max-width:400px;margin:0 auto;padding:40px 6px}
.login .logo{display:block;width:230px;max-width:80%;margin:10px auto 6px}
.login .app{text-align:center;font-weight:800;letter-spacing:.04em;margin:0 0 26px}
.login .app span{background:var(--y);padding:3px 9px;border-radius:7px}
.errbox{background:var(--redbg);color:var(--red);border-radius:10px;padding:10px 12px;font-size:14px;font-weight:600;margin:0 0 12px}
.hint{background:#fffbe0;border:1px solid #efd94a;border-radius:12px;padding:12px;font-size:14px;margin:0 0 12px}
.boot{display:grid;place-items:center;height:70vh}
.badge.found{background:var(--grnbg);color:var(--grn)}.badge.review{background:var(--ambbg);color:var(--amb)}.badge.pending{background:#eee;color:#555}.badge.not_found{background:var(--redbg);color:var(--red)}
.item{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center}
.item .t{font-weight:700}.item .s{font-size:13px;color:var(--mut);word-break:break-all}
table.tbl{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;font-size:14px}
table.tbl th{background:#fafaf8;text-align:left;font-size:12px;color:var(--mut);padding:9px 10px;border-bottom:1px solid var(--line)}
table.tbl td{padding:9px 10px;border-bottom:1px solid #f0f0ee;vertical-align:top}
.tblwrap{overflow-x:auto}
.progress{height:8px;background:#eee;border-radius:99px;overflow:hidden;margin:8px 0}.progress i{display:block;height:100%;background:var(--y);transition:width .3s}
.dz{border:2px dashed #d4d4d4;border-radius:12px;padding:14px;text-align:center;color:var(--mut);font-size:14px}
@media (min-width:900px){#top .dnav{display:flex}#tabs{display:none}body{padding-bottom:0}main{padding:20px 24px}}
.grow.ptxt{flex:1 1 100%;min-width:100%}
.card .row.wrap{row-gap:10px}
@media(min-width:700px){.grow.ptxt{flex:1 1 240px;min-width:240px}}
@media(max-width:699px){.card .row.wrap>.btn{flex:1 1 140px}}


#splash{--ease:cubic-bezier(.22,.61,.36,1);z-index:9999;pointer-events:auto;contain:strict;position:fixed;inset:0;overflow:hidden}
#splash *{box-sizing:border-box}
#splash .veil{background:#000;transition:opacity 1.7s cubic-bezier(.33,0,.2,1);position:absolute;inset:0}
#splash.is-s5 .veil,#splash.is-s6 .veil{opacity:0}
#splash .beam{opacity:0;mix-blend-mode:screen;width:min(120vw,1500px);height:135vh;margin-left:calc(-0.5*min(120vw,1500px));transition:opacity 1.6s cubic-bezier(.33,0,.2,1);position:absolute;top:-14vh;left:50%}
#splash.is-s1 .beam,#splash.is-s2 .beam,#splash.is-s3 .beam,#splash.is-s4 .beam{opacity:1}
#splash .haze,#splash .core{transform-origin:50% 6%;opacity:0;mix-blend-mode:screen;position:absolute;inset:0;transform:scaleY(.12)}
#splash .haze{filter:blur(30px) saturate(108%);background:radial-gradient(22% 10% at 50% 0,rgba(255,250,214,.5),rgba(255,246,176,.16) 62%,rgba(0,0,0,0) 100%),linear-gradient(rgba(255,246,176,.46) 0%,rgba(251,216,0,.22) 26%,rgba(251,216,0,.08) 58%,rgba(251,216,0,0) 94%);-webkit-mask-image:conic-gradient(at 50% -5%,rgba(0,0,0,0) 146deg,rgba(0,0,0,.07) 152deg,rgba(0,0,0,.45) 166deg,#000 180deg,rgba(0,0,0,.45) 194deg,rgba(0,0,0,.07) 208deg,rgba(0,0,0,0) 214deg),linear-gradient(#000 0%,rgba(0,0,0,.85) 40%,rgba(0,0,0,.28) 76%,rgba(0,0,0,0) 100%);mask-image:conic-gradient(at 50% -5%,rgba(0,0,0,0) 146deg,rgba(0,0,0,.07) 152deg,rgba(0,0,0,.45) 166deg,#000 180deg,rgba(0,0,0,.45) 194deg,rgba(0,0,0,.07) 208deg,rgba(0,0,0,0) 214deg),linear-gradient(#000 0%,rgba(0,0,0,.85) 40%,rgba(0,0,0,.28) 76%,rgba(0,0,0,0) 100%);-webkit-mask-composite:source-in;mask-composite:intersect}
#splash .core{filter:blur(16px);background:linear-gradient(rgba(255,252,232,.6) 0%,rgba(255,248,196,.18) 36%,rgba(255,246,176,.04) 68%,rgba(255,246,176,0) 90%);-webkit-mask-image:conic-gradient(at 50% -5%,rgba(0,0,0,0) 168deg,rgba(0,0,0,.4) 174deg,#000 180deg,rgba(0,0,0,.4) 186deg,rgba(0,0,0,0) 192deg),linear-gradient(#000 0%,rgba(0,0,0,.6) 46%,rgba(0,0,0,0) 88%);mask-image:conic-gradient(at 50% -5%,rgba(0,0,0,0) 168deg,rgba(0,0,0,.4) 174deg,#000 180deg,rgba(0,0,0,.4) 186deg,rgba(0,0,0,0) 192deg),linear-gradient(#000 0%,rgba(0,0,0,.6) 46%,rgba(0,0,0,0) 88%);-webkit-mask-composite:source-in;mask-composite:intersect}
#splash.is-s1 .haze,#splash.is-s1 .core,#splash.is-s2 .haze,#splash.is-s2 .core,#splash.is-s3 .haze,#splash.is-s3 .core,#splash.is-s4 .haze,#splash.is-s4 .core,#splash.is-s5 .haze,#splash.is-s5 .core,#splash.is-s6 .haze,#splash.is-s6 .core{animation:1.9s cubic-bezier(.22,.6,.16,1) 0s 1 normal forwards running sstrike}
#splash .core{animation-delay:.18s!important}
@keyframes sstrike{0%{opacity:0;transform:scaleY(.1)}30%{opacity:.62}100%{opacity:1;transform:scaleY(1)}}
#splash .pool{z-index:1;opacity:0;background:radial-gradient(50% 50%,rgba(251,216,0,.16),rgba(251,216,0,.05) 40%,rgba(0,0,0,0) 72%);width:150vw;height:70vh;margin-left:-75vw;transition:opacity 1.4s cubic-bezier(.33,0,.2,1) .3s;position:absolute;bottom:-30vh;left:50%}
#splash.is-s2 .pool,#splash.is-s3 .pool,#splash.is-s4 .pool{opacity:1}
#splash .dust{opacity:0;transition:opacity 2s var(--ease) .8s;position:absolute;inset:0}
#splash.is-s1 .dust,#splash.is-s2 .dust,#splash.is-s3 .dust,#splash.is-s4 .dust{opacity:.8}
#splash .dust i{top:calc(8% + (var(--i)*6.1%));left:calc(34% + (var(--i)*2.3%) - (var(--i)*var(--i)*.06%));filter:blur(1px);width:3px;height:3px;animation:sdust 8s linear infinite;animation-delay:calc(var(--i)*-.9s);background:rgba(255,250,214,.85);border-radius:50%;position:absolute}
#splash .dust i:nth-child(n+8){display:none}
@keyframes sdust{0%{opacity:0;transform:translateY(14px) scale(.6)}30%{opacity:.9}70%{opacity:.5}100%{opacity:0;transform:translate(22px,-46px) scale(1.1)}}
#splash .stage{perspective:1400px;perspective-origin:50% 30%;place-items:center;display:grid;position:absolute;inset:0}
#splash .mark{aspect-ratio:516/172;width:min(540px,80vw);transform-style:preserve-3d;will-change:transform;transition:transform 1.3s cubic-bezier(.45,0,.15,1);position:relative;transform:translate(0) scale(1)}
#splash .mark img{object-fit:contain;transform-origin:50% 30%;opacity:.15;width:100%;height:100%;transition:-webkit-mask-position 1.5s cubic-bezier(.3,0,.18,1),mask-position 1.5s cubic-bezier(.3,0,.18,1),transform 1.5s cubic-bezier(.3,0,.18,1),opacity 1.5s cubic-bezier(.3,0,.18,1);position:absolute;inset:0;transform:rotateX(24deg) rotate(-1.6deg) translateZ(-70px) scale(.94);-webkit-mask-image:linear-gradient(#000 0%,#000 34%,rgba(0,0,0,.35) 58%,rgba(0,0,0,0) 78%);mask-image:linear-gradient(#000 0%,#000 34%,rgba(0,0,0,.35) 58%,rgba(0,0,0,0) 78%);-webkit-mask-position:0 100%;mask-position:0 100%;-webkit-mask-size:100% 320%;mask-size:100% 320%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
#splash.is-s2 .mark img{opacity:.75;transform:rotateX(15deg) rotate(-1deg) translateZ(-34px) scale(.97);-webkit-mask-position:0 42%;mask-position:0 42%}
#splash.is-s3 .mark img,#splash.is-s4 .mark img,#splash.is-s5 .mark img,#splash.is-s6 .mark img{opacity:1;transform:none;-webkit-mask-position:0 0;mask-position:0 0}
#splash .mark img.dk{opacity:0!important;transition:opacity 1.3s cubic-bezier(.45,0,.15,1)!important}
#splash.is-s5 .mark img.dk,#splash.is-s6 .mark img.dk{opacity:1!important}
#splash .halo{aspect-ratio:1/1;opacity:0;filter:blur(24px);width:26%;transition:opacity 1.6s var(--ease),transform 2.2s cubic-bezier(.33,0,.2,1);background:radial-gradient(circle,rgba(251,216,0,.45),rgba(251,216,0,0) 70%);border-radius:50%;position:absolute;top:50%;left:0;transform:translateY(-50%) scale(.6)}
#splash.is-s2 .halo,#splash.is-s3 .halo,#splash.is-s4 .halo{opacity:1;transform:translateY(-50%) scale(1.3)}
#splash.is-s5 .halo,#splash.is-s6 .halo{opacity:0}
html.introing body{overflow:hidden}
@media (prefers-reduced-motion:reduce){#splash{display:none}}

#tabs a{touch-action:manipulation;-webkit-tap-highlight-color:rgba(245,217,10,.35);min-height:56px}
#tabs a.plus{min-height:56px}
#tabs a:active{opacity:.6}
.boot .spin{width:34px;height:34px;border-radius:50%;border:3px solid #e6e6e6;border-top-color:var(--y);animation:bsp .7s linear infinite}
@keyframes bsp{to{transform:rotate(360deg)}}
