:root{--espresso:#58382c;--caramel:#9e6e4a;--taupe:#c3a494;--cream:#fcf5f0;--bone:#e9e0db;--gold:#c8a97e;--ink:#2a1a13;--white:#fff;--ok:#2e7d32;--warn:#c0392b}*{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}html{-webkit-text-size-adjust:100%}body{font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;background:var(--cream);color:var(--ink);line-height:1.5;-webkit-font-smoothing:antialiased;padding-bottom:env(safe-area-inset-bottom)}.wrap{max-width:760px;margin:0 auto;padding:0 16px calc(110px + env(safe-area-inset-bottom))}.wrap-wide{max-width:1100px;margin:0 auto;padding:0 16px 60px}header.brand{text-align:center;padding:26px 16px 18px;background:var(--espresso);color:var(--cream);padding-top:calc(26px + env(safe-area-inset-top));position:relative}.brand .logo{font-size:12px;letter-spacing:.3em;color:var(--gold);font-weight:600}.brand h1{font-size:22px;font-weight:300;letter-spacing:.01em;margin:6px 0 3px}.brand .made{font-size:10px;letter-spacing:.24em;color:var(--taupe);text-transform:uppercase}.brand .navlink{position:absolute;top:calc(14px + env(safe-area-inset-top));left:16px;color:var(--gold);text-decoration:none;font-size:12px;font-weight:600;border:1px solid var(--gold);border-radius:20px;padding:6px 14px}.tabs{display:flex;background:var(--caramel);position:sticky;top:0;z-index:20}.tab{flex:1;text-align:center;padding:12px 6px;cursor:pointer;border:none;background:transparent;color:var(--cream);font-size:14px;font-weight:600;font-family:inherit;border-bottom:3px solid transparent;transition:.18s;min-height:52px}.tab .en{display:block;font-size:10px;font-weight:400;opacity:.82;letter-spacing:.04em;margin-top:2px}.tab.active{background:var(--cream);color:var(--espresso);border-bottom-color:var(--gold)}.tab:focus-visible{outline:2px solid var(--gold);outline-offset:-2px}.panel{display:none}.panel.active{display:block;animation:fade .2s ease}@keyframes fade{0%{opacity:0}to{opacity:1}}.killer{background:var(--gold);color:var(--ink);border-radius:14px;padding:16px 18px;margin:22px 0;border:1px solid #b89461}.killer .ar{font-size:15px;font-weight:700;line-height:1.45}.killer .en{font-size:12.5px;margin-top:6px;font-style:italic;color:#5a4326;line-height:1.4}.card{background:var(--white);border:1px solid var(--bone);border-radius:14px;padding:18px;margin-bottom:18px}.card>h2{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--caramel);margin-bottom:15px;font-weight:700}.card>h2 .en{font-weight:400;color:var(--taupe);letter-spacing:.03em}.field{margin-bottom:14px}.field:last-child{margin-bottom:0}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:6px}.field label .en{font-weight:400;color:var(--caramel);font-size:12px}.field input,.field select{width:100%;padding:13px 14px;border:1px solid var(--taupe);border-radius:10px;font-family:inherit;font-size:16px;background:var(--cream);color:var(--ink);min-height:50px}.field input:focus,.field select:focus{outline:2px solid var(--gold);outline-offset:1px;background:#fff}@media (min-width:560px){.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid2 .field{margin-bottom:0}}.prodlist{display:flex;flex-direction:column;gap:14px}.prodcard{border:1px solid var(--bone);border-radius:14px;padding:15px;background:var(--cream);transition:.15s}.prodcard.ranked{border-color:var(--gold);background:#fff;box-shadow:0 0 0 1px var(--gold)}.pname{font-size:15.5px;font-weight:700;line-height:1.35}.pfn{font-size:12px;color:var(--caramel);margin-top:2px}.pname-input{width:100%;padding:11px 12px;border:1px dashed var(--taupe);border-radius:9px;font-family:inherit;font-size:16px;background:#fff;color:var(--ink)}.ctl{margin-top:13px}.ctl-label{font-size:12px;font-weight:600;color:var(--espresso);margin-bottom:7px;display:block}.seg{display:flex;gap:7px;flex-wrap:wrap}.seg button{flex:1;min-width:46px;min-height:46px;border:1px solid var(--taupe);background:var(--white);border-radius:11px;font-family:inherit;font-size:16px;font-weight:700;color:var(--espresso);cursor:pointer;transition:.12s}.seg button.on{background:var(--espresso);color:var(--cream);border-color:var(--espresso);transform:translateY(-1px)}.seg button.dupe{background:#f5d6d0;border-color:var(--warn);color:var(--warn)}.seg.yesno button{font-size:14px}.seg.yesno button.on-yes{background:var(--ok);color:#fff;border-color:var(--ok)}.seg.yesno button.on-no{background:var(--taupe);color:#fff;border-color:var(--taupe)}.replace-in{width:100%;padding:12px 13px;border:1px solid var(--taupe);border-radius:10px;font-family:inherit;font-size:16px;background:var(--white);color:var(--ink);min-height:48px;text-align:right}.savebar{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fcf5f0f7;backdrop-filter:blur(8px);border-top:1px solid var(--bone);padding:12px 16px calc(12px + env(safe-area-inset-bottom));display:flex;gap:10px}.savebar.hide{display:none}.btn{flex:1;padding:15px 18px;border:none;border-radius:30px;font-family:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:.15s;min-height:52px}.btn-primary{background:var(--espresso);color:var(--cream);flex:2}.btn-primary:active{background:var(--ink)}.btn-primary:disabled{opacity:.55;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--espresso);border:1px solid var(--caramel)}.btn-ghost:active{background:var(--bone)}.btn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.note{font-size:11.5px;color:var(--taupe);text-align:center;margin-top:14px;line-height:1.5}.sub-empty{text-align:center;color:var(--taupe);padding:54px 20px;font-size:15px}.sub-empty .en{display:block;font-size:13px;margin-top:6px}.meta-row{display:flex;justify-content:space-between;gap:10px;padding:11px 2px;border-bottom:1px solid var(--bone);font-size:14px}.meta-row:last-child{border-bottom:none}.meta-row .k{color:var(--caramel);font-weight:600}.meta-row .v{font-weight:700;text-align:left}.rank-item{display:flex;align-items:center;gap:13px;background:var(--cream);border:1px solid var(--bone);border-radius:11px;padding:12px 14px;margin-bottom:9px}.rank-badge{width:36px;height:36px;flex:0 0 36px;border-radius:50%;background:var(--gold);color:var(--ink);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:17px}.rank-item .nm{font-weight:700;font-size:14.5px}.rank-item .nm .fn{display:block;font-size:11px;color:var(--caramel);font-weight:400;margin-top:1px}.pill{display:inline-block;background:var(--bone);color:var(--espresso);border-radius:20px;padding:6px 13px;font-size:12.5px;margin:0 0 6px 6px}.sub-section-title{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--caramel);font-weight:700;margin:18px 0 10px}.toast{position:fixed;left:50%;transform:translate(-50%);bottom:90px;z-index:50;background:var(--espresso);color:var(--cream);padding:13px 22px;border-radius:30px;font-weight:700;font-size:14px;box-shadow:0 8px 24px #00000040}.toast.err{background:var(--warn)}.dash-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:22px 0}.stat{background:var(--white);border:1px solid var(--bone);border-radius:14px;padding:16px 18px}.stat .num{font-size:30px;font-weight:700;color:var(--espresso)}.stat .lbl{font-size:12px;color:var(--caramel);font-weight:600;margin-top:4px}.filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;background:var(--white);border:1px solid var(--bone);border-radius:14px;padding:16px;margin-bottom:18px}.filters .field{margin-bottom:0}.filters label{font-size:12px;color:var(--caramel);font-weight:600;display:block;margin-bottom:5px}.filters input{width:100%;padding:10px 12px;border:1px solid var(--taupe);border-radius:9px;font-family:inherit;font-size:14px;background:var(--cream);min-height:42px}.filter-actions{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.btn-sm{padding:10px 18px;border-radius:24px;border:none;font-family:inherit;font-weight:700;font-size:13px;cursor:pointer;min-height:42px}.btn-export{background:var(--ok);color:#fff}.btn-clear{background:transparent;color:var(--espresso);border:1px solid var(--caramel)}.table-wrap{background:var(--white);border:1px solid var(--bone);border-radius:14px;overflow:auto}table.subs{width:100%;border-collapse:collapse;font-size:13.5px;min-width:760px}table.subs th{background:var(--espresso);color:var(--cream);font-weight:600;text-align:right;padding:11px 12px;position:sticky;top:0;white-space:nowrap;font-size:12px}table.subs td{padding:11px 12px;border-bottom:1px solid var(--bone);vertical-align:top}table.subs tr:hover td{background:var(--cream)}.tag{display:inline-block;background:var(--bone);color:var(--espresso);border-radius:14px;padding:3px 9px;font-size:11.5px;margin:2px 0 2px 4px}.tag.r{background:var(--gold);color:var(--ink);font-weight:700}.del-btn{background:transparent;border:1px solid var(--warn);color:var(--warn);border-radius:8px;padding:5px 10px;font-size:12px;cursor:pointer;font-family:inherit}.muted{color:var(--taupe)}.login-box{max-width:380px;margin:60px auto;background:var(--white);border:1px solid var(--bone);border-radius:14px;padding:26px}.login-box h2{color:var(--espresso);margin-bottom:16px;font-size:18px}.login-box input{width:100%;padding:13px 14px;border:1px solid var(--taupe);border-radius:10px;font-size:16px;background:var(--cream);margin-bottom:14px;font-family:inherit;min-height:50px}header.brand{padding-left:96px;padding-right:96px}@media (max-width:560px){header.brand{padding-left:14px;padding-right:14px}.brand .navlink{position:static;display:inline-block;margin-bottom:10px}.brand h1{font-size:19px}}@media (max-width:820px){table.subs{min-width:0;display:block;font-size:14px}table.subs thead{display:none}table.subs tbody,table.subs tr,table.subs td{display:block;width:100%}table.subs tr{border:1px solid var(--bone);border-radius:12px;background:var(--white);margin:0 10px 12px;padding:4px 2px}.table-wrap{border:none;background:transparent;overflow:visible;padding-top:2px}table.subs td{border:none;border-bottom:1px solid var(--bone);padding:9px 13px;display:block;text-align:right;overflow-wrap:anywhere}table.subs td:last-child{border-bottom:none}table.subs td:before{content:attr(data-label);display:block;font-weight:700;color:var(--caramel);font-size:11px;margin-bottom:4px;white-space:normal}table.subs td.cell-actions{text-align:left}table.subs td.cell-actions:before{display:none}table.subs td .tag{margin:0 0 5px 5px}}@media (max-width:380px){.wrap{padding-left:12px;padding-right:12px}.brand h1{font-size:17px}.btn{font-size:14px;padding:14px 12px}.seg button{font-size:15px}.seg.yesno button{font-size:13px}}@media (min-width:680px){.prodlist{display:grid;grid-template-columns:1fr 1fr;gap:14px}.prodlist .prodcard{margin:0}}
