.admin{min-height:100vh}.admin-top{background:var(--white);border-bottom:1px solid var(--line);padding:0 24px;display:flex;align-items:center;gap:26px;flex-wrap:wrap;position:sticky;top:0;z-index:20}.admin-top img{height:22px}.admin-nav{display:flex;gap:4px;margin-left:8px}.admin-nav a{padding:16px 12px;font-size:13px;font-weight:500;color:var(--ink-2);border-bottom:2px solid transparent;text-decoration:none}.admin-nav a:hover{color:var(--ink);text-decoration:none}.admin-nav a.active{color:var(--blue);border-bottom-color:var(--blue)}.admin-top .who{margin-left:auto;font-size:12px;color:var(--ink-3);display:flex;gap:14px;align-items:center}.admin-body{padding:26px 24px 70px;max-width:1280px;margin:0 auto}.admin-body h1{font-size:20px;font-weight:600;letter-spacing:-.3px;margin-bottom:4px}.admin-body .sub{font-size:12.5px;color:var(--ink-3);margin-bottom:22px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-bottom:22px}.card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:16px 18px}.card .l{font-size:11px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.card .v{font-size:24px;font-weight:600;margin-top:6px;letter-spacing:-.5px;font-variant-numeric:tabular-nums}.card .d{font-size:11.5px;color:var(--ink-3);margin-top:4px;line-height:1.5}.pane{background:var(--white);border:1px solid var(--line);border-radius:12px;margin-bottom:16px;overflow:hidden}.pane-h{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.pane-h h2{font-size:13.5px;font-weight:600}.pane-h .spacer{margin-left:auto}.pane-b{padding:16px 18px}table.grid{width:100%;border-collapse:collapse;font-size:12.5px}table.grid th{text-align:left;padding:9px 18px;font-size:10.5px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border-bottom:1px solid var(--line);white-space:nowrap;background:var(--bg)}table.grid td{padding:11px 18px;border-bottom:1px solid var(--line);vertical-align:middle}table.grid tr:last-child td{border-bottom:0}table.grid tr:hover td{background:#fbfcfe}table.grid td.num{text-align:right;font-variant-numeric:tabular-nums}.scroll-x{overflow-x:auto}.pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:10.5px;font-weight:600;letter-spacing:.03em;white-space:nowrap}.pill.ok{background:var(--ok-bg);color:var(--ok)}.pill.warn{background:var(--warn-bg);color:var(--warn)}.pill.bad{background:var(--danger-bg);color:var(--danger)}.pill.mute{background:var(--bg);color:var(--ink-3)}.pill.blue{background:var(--blue-50);color:var(--blue-dark)}.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.filters input,.filters select{padding:7px 11px;font-size:12.5px;border:1px solid var(--line-2);border-radius:7px;background:var(--white);color:var(--ink)}.filters input:focus,.filters select:focus{outline:none;border-color:var(--blue)}.setting{display:flex;gap:16px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line)}.setting:last-child{border-bottom:0}.setting .info{flex:1}.setting .info .name{font-size:13px;font-weight:600;margin-bottom:3px}.setting .info .desc{font-size:12px;color:var(--ink-3);line-height:1.6;max-width:62ch}.setting input[type=number],.setting input[type=text]{width:130px;padding:7px 10px;font-size:12.5px;border:1px solid var(--line-2);border-radius:7px;text-align:right}.timeline{display:grid;gap:10px}.visit{border:1px solid var(--line);border-radius:10px;overflow:hidden}.visit-h{padding:11px 15px;background:var(--bg);display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:12px}.visit-h .when{font-weight:600;color:var(--ink)}.visit-h .meta{color:var(--ink-3)}.visit-events{padding:6px 0;max-height:300px;overflow-y:auto}.ev{display:flex;gap:12px;padding:5px 15px;font-size:11.5px;align-items:baseline}.ev .t{color:var(--ink-3);font-variant-numeric:tabular-nums;width:62px;flex:none}.ev .n{font-weight:600;color:var(--blue-dark);width:150px;flex:none}.ev .p{color:var(--ink-2);overflow-wrap:anywhere}.bar{height:6px;background:var(--bg);border-radius:3px;overflow:hidden;min-width:60px}.bar>i{display:block;height:100%;background:var(--blue)}.consent-row{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--line);font-size:12px}.consent-row:last-child{border-bottom:0}.consent-row .when{color:var(--ink-3);width:140px;flex:none;font-variant-numeric:tabular-nums}.consent-row .what{flex:1}.consent-row .what .text{color:var(--ink-3);font-size:11.5px;margin-top:3px;line-height:1.5}:root{--blue: #0048F9;--blue-dark: #0033B8;--blue-50: #EEF3FF;--blue-100: #DCE6FE;--ink: #12151C;--ink-2: #4A5160;--ink-3: #858B98;--line: #E4E7EE;--line-2: #CDD3DF;--bg: #F7F8FB;--white: #fff;--danger: #B42318;--danger-bg: #FEF3F2;--warn: #B45309;--warn-bg: #FFF1E6;--ok: #067647;--ok-bg: #ECFDF3;--r: 10px;--r-card: 14px}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-print-color-adjust:exact;print-color-adjust:exact}body{font-family:Montserrat,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--ink);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit}:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.wrap{max-width:1200px;margin:0 auto;padding:28px 24px 64px}.top{background:var(--white);border:1px solid var(--line);border-radius:var(--r-card);padding:26px 30px;margin-bottom:16px}.top-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,280px);gap:36px;align-items:start}.brand img{height:32px;display:block}.brand h1{margin-top:14px;font-size:23px;font-weight:600;letter-spacing:-.3px}.brand .co{font-size:12px;color:var(--ink-2);margin-top:5px;letter-spacing:.02em}.brand .addr{font-size:11px;color:var(--ink-3);margin-top:11px;line-height:1.65;max-width:390px}.meta{display:grid;grid-template-columns:auto minmax(0,1fr);gap:7px 16px;font-size:13px;align-content:start}.meta dt{color:var(--ink-3);white-space:nowrap}.meta dd{font-weight:500;min-width:0}.field{outline:none;border:0;border-bottom:1px dashed var(--line-2);padding:1px 3px;min-width:110px;width:100%;border-radius:3px;background:transparent;font-size:13px;font-weight:500;color:var(--ink)}.field:hover{background:var(--blue-50)}.field:focus{background:var(--blue-50);border-bottom-color:var(--blue)}.field::placeholder{color:var(--ink-3);font-weight:400}.sessionbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:14px;font-size:12px;color:var(--ink-3)}.sessionbar strong{color:var(--ink-2);font-weight:500}.sessionbar .spacer{margin-left:auto}.linkbtn{background:none;border:0;color:var(--ink-3);cursor:pointer;font-size:12px;text-decoration:underline;padding:0}.linkbtn:hover{color:var(--blue)}.controls{background:var(--white);border:1px solid var(--line);border-radius:var(--r-card);padding:16px 20px;margin-bottom:16px;display:flex;gap:22px;align-items:center;flex-wrap:wrap}.ctl{display:flex;align-items:center;gap:10px}.ctl-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}.seg{display:inline-flex;background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:3px}.seg button{font-size:13px;font-weight:500;border:0;background:transparent;color:var(--ink-2);padding:7px 16px;border-radius:6px;cursor:pointer;transition:.12s}.seg button.on{background:var(--blue);color:#fff}.sw{display:flex;align-items:center;gap:9px;cursor:pointer;-webkit-user-select:none;user-select:none}.sw input{position:absolute;opacity:0;width:0;height:0}.sw .track{width:38px;height:22px;border-radius:99px;background:var(--line-2);position:relative;transition:.15s;flex:none}.sw .track:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;transition:.15s}.sw input:checked+.track{background:var(--blue)}.sw input:checked+.track:after{transform:translate(16px)}.sw input:focus-visible+.track{outline:2px solid var(--blue);outline-offset:2px}.sw .txt{font-size:13px;font-weight:500}.search{flex:1;min-width:190px}.search input{font-size:13px;width:100%;padding:9px 13px;border:1px solid var(--line-2);border-radius:8px;background:var(--bg);color:var(--ink)}.search input:focus{outline:none;border-color:var(--blue);background:#fff}.layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}@media(max-width:1080px){.layout{grid-template-columns:1fr}.panel{position:static;max-width:430px}}.grp{background:var(--white);border:1px solid var(--line);border-radius:var(--r-card);margin-bottom:14px;overflow:hidden}.grp-h{padding:14px 22px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:11px}.grp-h .dot{width:8px;height:8px;border-radius:50%;background:var(--blue);flex:none}.grp-h h2{font-size:14px;font-weight:600}.grp-h .n{margin-left:auto;font-size:11px;color:var(--ink-3);font-weight:500}.role{padding:15px 22px;border-bottom:1px solid var(--line)}.role:last-child{border-bottom:0}.role:hover{background:#fbfcfe}.role-top{display:grid;grid-template-columns:minmax(175px,1fr) minmax(0,1.45fr);gap:20px;align-items:center}.role-n{font-size:13.5px;font-weight:600;line-height:1.3}.badge{display:inline-block;font-size:9.5px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;background:var(--blue-50);color:var(--blue-dark);padding:2px 7px;border-radius:4px;margin-left:7px;vertical-align:1px}.role-t{font-size:11.5px;color:var(--ink-3);margin-top:3px;line-height:1.45}.role-note{font-size:11.5px;color:var(--ink-2);line-height:1.65;margin-top:11px;max-width:78ch}body.compact .role-note{display:none}body.compact .role{padding:11px 22px}.tiers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.tiers.one{grid-template-columns:minmax(0,1fr)}.chip{border:1px solid var(--line);border-radius:var(--r);padding:9px 11px;background:var(--white);cursor:pointer;text-align:left;transition:.12s;position:relative}.chip:hover{border-color:var(--blue);background:var(--blue-50)}.chip .lv{font-size:10px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-3)}.chip .pr{font-size:15px;font-weight:600;margin-top:3px;letter-spacing:-.2px;font-variant-numeric:tabular-nums;white-space:nowrap}.chip .yr{font-size:10px;color:var(--ink-3);margin-top:1px}.chip .add{position:absolute;top:8px;right:9px;font-size:15px;color:var(--line-2);line-height:1;font-weight:500}.chip:hover .add{color:var(--blue)}.chip.picked{border-color:var(--blue);background:var(--blue-50);box-shadow:inset 0 0 0 1px var(--blue)}.chip.picked .add{color:var(--blue)}.panel{position:sticky;top:20px;background:var(--white);border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}.panel-h{padding:15px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.panel-h h3{font-size:13px;font-weight:600}.empty{padding:32px 20px;text-align:center;color:var(--ink-3);font-size:12.5px;line-height:1.7}.line{padding:11px 20px;border-bottom:1px solid var(--line);display:flex;gap:10px;align-items:center}.line-i{flex:1;min-width:0}.line-n{font-size:12.5px;font-weight:500;line-height:1.3}.line-m{font-size:10.5px;color:var(--ink-3);margin-top:2px}.qty{display:flex;align-items:center;gap:2px;flex:none}.qty button{width:22px;height:22px;border:1px solid var(--line-2);background:#fff;border-radius:5px;cursor:pointer;font-size:13px;color:var(--ink-2);line-height:1;display:flex;align-items:center;justify-content:center}.qty button:hover{border-color:var(--blue);color:var(--blue)}.qty span{width:22px;text-align:center;font-size:12.5px;font-weight:600;font-variant-numeric:tabular-nums}.line-p{font-size:12.5px;font-weight:600;text-align:right;min-width:60px;font-variant-numeric:tabular-nums;flex:none}.tot{padding:16px 20px;background:var(--blue-50)}.tot-r{display:flex;justify-content:space-between;align-items:baseline;font-size:12.5px;color:var(--ink-2);margin-bottom:6px}.tot-r b,.tot-r span:last-child{font-variant-numeric:tabular-nums;font-weight:500;color:var(--ink)}.tot-r.big{font-size:13px;font-weight:600;color:var(--ink);margin:10px 0 0;padding-top:11px;border-top:1px solid var(--blue-100)}.tot-r.big b{font-size:24px;letter-spacing:-.6px;font-weight:600}.proj{padding:14px 20px;border-top:1px solid var(--line)}.proj-h{font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:9px}.proj-g{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.proj-c{background:var(--bg);border-radius:8px;padding:9px 6px;text-align:center}.proj-c .l{font-size:10px;color:var(--ink-3)}.proj-c .v{font-size:12.5px;font-weight:600;margin-top:2px;font-variant-numeric:tabular-nums}.acts{padding:14px 20px;border-top:1px solid var(--line);display:grid;gap:8px}.btn{font-size:12.5px;font-weight:500;padding:10px 14px;border-radius:8px;cursor:pointer;border:1px solid var(--line-2);background:#fff;color:var(--ink);transition:.12s}.btn:hover{border-color:var(--blue);color:var(--blue)}.btn.pri{background:var(--blue);border-color:var(--blue);color:#fff}.btn.pri:hover{background:var(--blue-dark);border-color:var(--blue-dark);color:#fff}.btn.danger{background:#fff;border-color:var(--line-2);color:var(--danger)}.btn.danger:hover{border-color:var(--danger)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.sm{padding:6px 11px;font-size:11.5px}.notes{background:var(--white);border:1px solid var(--line);border-radius:var(--r-card);padding:24px 28px;margin-top:16px}.notes h3{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:16px}.ncols{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px}.ncols h4{font-size:12.5px;font-weight:600;margin-bottom:8px}.ncols ul{list-style:none;font-size:11.5px;color:var(--ink-2);line-height:1.75}.ncols li{padding-left:13px;position:relative;margin-bottom:5px}.ncols li:before{content:"";position:absolute;left:0;top:8px;width:4px;height:4px;border-radius:50%;background:var(--line-2)}.foot{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);font-size:11px;color:var(--ink-3);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;line-height:1.7}.watermark{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden;display:flex;align-items:center;justify-content:center}.watermark span{font-size:42px;font-weight:600;color:var(--ink);opacity:.045;transform:rotate(-28deg);white-space:nowrap;letter-spacing:.04em}.wrap{position:relative;z-index:1}.toast{position:fixed;bottom:22px;left:50%;transform:translate(-50%) translateY(80px);background:var(--ink);color:#fff;padding:11px 20px;border-radius:8px;font-size:12.5px;font-weight:500;transition:.22s;pointer-events:none;opacity:0;z-index:99}.toast.on{transform:translate(-50%) translateY(0);opacity:1}@media(max-width:660px){.wrap{padding:16px 12px 40px}.top{padding:20px 18px}.top-row{grid-template-columns:1fr;gap:18px}.brand .addr{max-width:none}.role-top{grid-template-columns:1fr;gap:11px}.role{padding:14px 16px}.grp-h{padding:12px 16px}.notes{padding:18px}.controls{padding:14px 16px;gap:14px}.panel{max-width:none}}@media(max-width:400px){.tiers{grid-template-columns:1fr;gap:6px}.chip{display:flex;align-items:baseline;gap:9px;padding:8px 11px}.chip .pr{margin-top:0}.chip .yr{margin-left:auto;margin-top:0;padding-right:18px}}.tot-r.big b{display:inline-block;transform-origin:right center}.auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}@media(max-width:900px){.auth-shell{grid-template-columns:1fr}.auth-aside{display:none}}.auth-main{display:flex;align-items:center;justify-content:center;padding:40px 32px}.auth-card{width:100%;max-width:400px}.auth-card img.logo{height:30px;display:block;margin-bottom:26px}.auth-card h1{font-size:24px;font-weight:600;letter-spacing:-.4px;margin-bottom:8px}.auth-card .lede{color:var(--ink-2);font-size:14px;line-height:1.6;margin-bottom:26px}.auth-field{margin-bottom:14px}.auth-field label{display:block;font-size:12px;font-weight:600;color:var(--ink-2);margin-bottom:6px}.auth-field input[type=email],.auth-field input[type=text],.auth-field textarea{width:100%;padding:12px 14px;font-size:14px;border:1px solid var(--line-2);border-radius:8px;background:var(--white);color:var(--ink)}.auth-field input:focus,.auth-field textarea:focus{outline:none;border-color:var(--blue)}.auth-field .hint{font-size:11.5px;color:var(--ink-3);margin-top:6px;line-height:1.55}.auth-submit{width:100%;padding:13px 20px;font-size:14px;font-weight:600;background:var(--blue);color:#fff;border:1px solid var(--blue);border-radius:8px;cursor:pointer;transition:.12s;margin-top:4px}.auth-submit:hover:not(:disabled){background:var(--blue-dark);border-color:var(--blue-dark)}.auth-submit:disabled{opacity:.55;cursor:not-allowed}.consent-box{display:flex;gap:10px;align-items:flex-start;margin:18px 0 20px;padding:14px 15px;background:var(--white);border:1px solid var(--line);border-radius:10px}.consent-box input{margin-top:2px;width:16px;height:16px;flex:none;accent-color:var(--blue);cursor:pointer}.consent-box label{font-size:12.5px;line-height:1.6;color:var(--ink-2);cursor:pointer}.alert{padding:13px 15px;border-radius:10px;font-size:13px;line-height:1.6;margin-bottom:18px}.alert.error{background:var(--danger-bg);color:var(--danger);border:1px solid #FDA29B}.alert.info{background:var(--blue-50);color:var(--blue-dark);border:1px solid var(--blue-100)}.alert.ok{background:var(--ok-bg);color:var(--ok);border:1px solid #A6F4C5}.alert button{margin-top:8px}.auth-aside{background:var(--white);border-left:1px solid var(--line);padding:48px 44px;display:flex;flex-direction:column;justify-content:center}.auth-aside h2{font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:22px}.auth-aside ul{list-style:none;display:grid;gap:18px;max-width:380px}.auth-aside li{padding-left:26px;position:relative;font-size:13.5px;line-height:1.65;color:var(--ink-2)}.auth-aside li:before{content:"";position:absolute;left:0;top:7px;width:8px;height:8px;border-radius:50%;background:var(--blue)}.auth-aside li strong{display:block;color:var(--ink);font-weight:600;margin-bottom:2px}.auth-aside .addr{margin-top:36px;font-size:11px;color:var(--ink-3);line-height:1.7}.match-code{background:var(--blue-50);border-radius:10px;padding:16px 18px;margin:20px 0}.match-code .lbl{font-size:11px;color:var(--ink-3);margin-bottom:4px}.match-code .code{font-size:30px;font-weight:600;letter-spacing:.22em;color:var(--blue)}.otp-input{width:100%;padding:14px;font-size:26px;font-weight:600;letter-spacing:.35em;text-align:center;font-variant-numeric:tabular-nums;border:1px solid var(--line-2);border-radius:8px;background:var(--white)}.otp-input:focus{outline:none;border-color:var(--blue)}.countdown{font-size:12.5px;color:var(--ink-3);text-align:center;margin-top:12px}.countdown strong{color:var(--ink-2);font-variant-numeric:tabular-nums}.cookie-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:200;max-width:620px;margin:0 auto;background:var(--white);border:1px solid var(--line-2);border-radius:12px;padding:18px 20px;box-shadow:0 8px 28px #12151c1f;display:flex;gap:18px;align-items:center;flex-wrap:wrap}.cookie-banner p{font-size:12.5px;line-height:1.6;color:var(--ink-2);flex:1;min-width:240px;margin:0}.cookie-banner .actions{display:flex;gap:8px;flex-wrap:wrap}.doc{max-width:760px;margin:0 auto;padding:48px 24px 80px}.doc h1{font-size:26px;font-weight:600;letter-spacing:-.4px;margin-bottom:8px}.doc .updated{font-size:12px;color:var(--ink-3);margin-bottom:32px}.doc h2{font-size:15px;font-weight:600;margin:32px 0 10px}.doc p,.doc li{font-size:13.5px;line-height:1.75;color:var(--ink-2)}.doc p{margin-bottom:12px}.doc ul{margin:0 0 12px 20px}.doc li{margin-bottom:6px}.doc .callout{background:var(--white);border:1px solid var(--line);border-radius:10px;padding:16px 18px;margin:18px 0}@page{size:A4;margin:11mm}@media print{body{background:#fff;font-size:10px}.wrap{max-width:none;padding:0}.no-print{display:none!important}.layout{grid-template-columns:1fr;gap:0}.panel{position:static;margin-top:9px;break-inside:avoid;max-width:none}.top,.grp,.panel,.notes{border-color:#d5d9e2;border-radius:8px}.top{padding:13px 16px;margin-bottom:9px}.top-row{grid-template-columns:minmax(0,1fr) 195px;gap:22px;align-items:start}.brand img{height:22px}.brand h1{font-size:16px;margin-top:8px;letter-spacing:-.2px}.brand .co{font-size:9px;margin-top:2px}.brand .addr{font-size:8.5px;margin-top:6px;max-width:none;line-height:1.5}.meta{font-size:9.5px;gap:3px 10px}.meta dd{overflow-wrap:anywhere}.field{border-bottom:0;padding:0}.field::placeholder{color:transparent}.grp{break-inside:avoid;margin-bottom:7px}.role{padding:8px 14px}.role-note{margin-top:6px;font-size:9px;max-width:none}.grp-h{padding:9px 14px}.chip{padding:6px 8px}.chip .pr{font-size:11.5px}.chip .add{display:none}.notes{padding:16px 18px;break-inside:avoid}body.quote-only .catalogue{display:none}.watermark{position:fixed;display:flex}.watermark span{font-size:34px;opacity:.07}.print-ref{display:block!important;margin-top:10px;font-size:8px;color:#858b98;letter-spacing:.02em}}.print-ref{display:none}
