:root{--ink:#19172a;--muted:#747187;--purple:#6852d8;--purple-dark:#513cc5;--purple-soft:#eeebff;--canvas:#f5f5fa;--surface:#fff;--line:#e9e8f0;--green:#1f9d76;--green-soft:#e6f7f1;--amber:#d98b28;--amber-soft:#fff3dd;--red:#cf4f5d;--red-soft:#ffebee;--nav:#211f33;--shadow:0 16px 44px rgba(31,28,55,.07)}
*{box-sizing:border-box}html{font-size:16px}body{margin:0;min-width:320px;color:var(--ink);background:var(--canvas);font-family:"Golos Text",sans-serif}button,input,select{font:inherit}button{cursor:pointer}[hidden]{display:none!important}.app-shell{min-height:100vh;display:grid;grid-template-columns:250px minmax(0,1fr)}
.sidebar{position:fixed;inset:0 auto 0 0;width:250px;padding:30px 20px 22px;display:flex;flex-direction:column;background:var(--nav);color:#fff;z-index:20}.brand{display:flex;align-items:center;gap:12px;padding:0 10px;color:#fff;text-decoration:none;font:800 1.25rem/1 "Manrope",sans-serif}.brand>span:last-child span{color:#9a89ff}.brand-mark{width:36px;height:36px;padding:8px;border-radius:11px;display:flex;gap:3px;align-items:end;background:linear-gradient(145deg,#7b66eb,#5a43cc)}.brand-mark i{display:block;width:4px;border-radius:5px;background:#fff;transform:rotate(35deg)}.brand-mark i:nth-child(1){height:10px}.brand-mark i:nth-child(2){height:18px}.brand-mark i:nth-child(3){height:13px}.main-nav{margin-top:46px;display:grid;gap:8px}.nav-item{width:100%;border:0;border-radius:11px;padding:13px 14px;display:flex;align-items:center;gap:12px;color:#aaa7b8;background:transparent;text-align:left;font-weight:500}.nav-item svg{width:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round}.nav-item.active{color:#fff;background:rgba(122,101,235,.2);box-shadow:inset 3px 0 #8f7bff}.nav-count{margin-left:auto;min-width:24px;padding:2px 7px;border-radius:99px;color:#cfcaee;background:rgba(255,255,255,.1);font-size:.75rem;text-align:center}.sidebar-note{margin-top:auto;padding:16px 12px;display:flex;gap:11px;border-top:1px solid rgba(255,255,255,.07);border-bottom:1px solid rgba(255,255,255,.07)}.pulse{width:9px;height:9px;margin-top:5px;border-radius:50%;background:#5dd4a9;box-shadow:0 0 0 5px rgba(93,212,169,.1)}.sidebar-note strong,.profile-card strong{display:block;font-size:.8rem}.sidebar-note small,.profile-card small{display:block;margin-top:3px;color:#8f8c9d;font-size:.72rem}.profile-card{padding:19px 8px 0;display:grid;grid-template-columns:38px 1fr 30px;align-items:center;gap:10px}.avatar{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;color:#fff;background:linear-gradient(140deg,#7560e4,#ae74d8);font-size:.76rem;font-weight:700}
.workspace{grid-column:2;min-width:0;padding:0 44px 48px}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.role-switcher{padding:4px;display:flex;gap:3px;border-radius:10px;background:#eae9f1}.role-pill{border:0;border-radius:7px;padding:8px 14px;color:var(--muted);background:transparent;font-size:.82rem;font-weight:600}.role-pill.active{color:var(--purple-dark);background:#fff;box-shadow:0 3px 10px rgba(35,30,63,.08)}.topbar-actions{display:flex;align-items:center;gap:12px}.icon-button{width:40px;height:40px;padding:0;display:grid;place-items:center;border:1px solid var(--line);border-radius:11px;color:var(--muted);background:#fff}.icon-button svg{width:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.notification-button{position:relative}.notification-button i{position:absolute;right:8px;top:7px;width:6px;height:6px;border-radius:50%;background:#ee596a;box-shadow:0 0 0 2px #fff}.primary-button,.secondary-button{min-height:42px;padding:0 18px;border-radius:10px;border:0;font-weight:600}.primary-button{color:#fff;background:var(--purple);box-shadow:0 7px 17px rgba(104,82,216,.2)}.primary-button:hover{background:var(--purple-dark)}.primary-button span{font-size:1.15rem;margin-right:4px}.secondary-button{color:var(--ink);background:#f1f0f5}.mobile-menu{display:none}.page-head{padding:38px 0 24px;display:flex;align-items:end;justify-content:space-between}.eyebrow{margin:0 0 9px;color:var(--purple);font-size:.7rem;font-weight:700;letter-spacing:.12em}h1,h2{margin:0;font-family:"Manrope",sans-serif;letter-spacing:-.035em}h1{font-size:clamp(1.8rem,3vw,2.35rem)}h2{font-size:1.45rem}.page-head p:last-child{margin:7px 0 0;color:var(--muted)}.date-stamp{text-align:right}.date-stamp span{display:block;margin-bottom:4px;color:var(--muted);font-size:.75rem}.date-stamp strong{font-size:.85rem}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:20px}.stat-card{min-height:116px;padding:20px;display:flex;align-items:center;gap:15px;border:1px solid var(--line);border-radius:15px;background:var(--surface);box-shadow:var(--shadow)}.stat-icon{flex:0 0 auto;width:45px;height:45px;display:grid;place-items:center;border-radius:13px;font:700 1.2rem "Manrope",sans-serif}.stat-icon.violet{color:var(--purple);background:var(--purple-soft)}.stat-icon.mint{color:var(--green);background:var(--green-soft)}.stat-icon.amber{color:var(--amber);background:var(--amber-soft)}.stat-icon.coral{color:var(--red);background:var(--red-soft)}.stat-card small{display:block;margin-bottom:5px;color:var(--muted);font-size:.75rem}.stat-card strong{display:block;font:700 1.38rem "Manrope",sans-serif}.trend,.subvalue{display:block;margin-top:5px;font-size:.69rem}.trend{color:var(--green)}.subvalue{color:var(--muted)}
.orders-panel,.report-chart-card,.report-summary{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.panel-toolbar{padding:16px 18px;display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line)}.search-field{width:min(340px,100%);position:relative}.search-field svg{position:absolute;left:13px;top:50%;width:18px;transform:translateY(-50%);fill:none;stroke:#9b98aa;stroke-width:1.8}input,select{min-height:41px;border:1px solid #dedde7;border-radius:9px;color:var(--ink);background:#fff;outline:none}.search-field input{width:100%;padding:0 12px 0 41px}.search-field input:focus,input:focus,select:focus{border-color:#9c8ee9;box-shadow:0 0 0 3px rgba(104,82,216,.09)}.filters{display:flex;gap:8px}.select-wrap span{position:absolute;clip:rect(0 0 0 0)}.select-wrap select{min-width:130px;padding:0 32px 0 12px;color:#5f5b70;font-size:.78rem}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:940px}th{padding:13px 16px;color:#9693a2;background:#fafafd;border-bottom:1px solid var(--line);text-align:left;font-size:.65rem;letter-spacing:.07em}td{padding:17px 16px;border-bottom:1px solid #f0eff4;font-size:.8rem}tbody tr:hover{background:#fcfbff}td strong{display:block;font-weight:600}td small{display:block;margin-top:5px;color:var(--muted);font-size:.69rem}.type-badge,.status-badge{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border-radius:7px;padding:6px 9px;font-size:.7rem;font-weight:600}.type-badge.homepage{color:#5e49c5;background:var(--purple-soft)}.type-badge.article{color:#4475aa;background:#eaf3fb}.status-badge i{width:6px;height:6px;border-radius:50%;background:currentColor}.status-badge.unpaid{color:#ba741a;background:var(--amber-soft)}.status-badge.paid{color:var(--green);background:var(--green-soft)}.status-badge.scam{color:var(--red);background:var(--red-soft)}.file-link,.more-button{border:0;background:transparent}.file-link{color:var(--purple);padding:0;font-size:.72rem}.no-file{color:#a09dad;font-size:.72rem}.more-button{color:#8a8798;font-weight:700;letter-spacing:.08em}.table-footer{min-height:58px;padding:11px 18px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:.72rem}.pagination{display:flex;gap:5px}.pagination button{min-width:31px;height:31px;border:1px solid var(--line);border-radius:8px;color:var(--muted);background:#fff}.pagination button.active{color:#fff;background:var(--purple)}.pagination button:disabled{opacity:.4}.empty-state{padding:60px 20px;text-align:center}.empty-state span{font-size:2rem;color:var(--purple)}.empty-state strong{display:block;margin-top:9px}.empty-state p{color:var(--muted)}
.reports-view{display:grid;grid-template-columns:2fr 1fr;gap:18px}.report-chart-card,.report-summary{padding:24px}.bar-chart{height:250px;margin-top:28px;display:flex;align-items:end;gap:16px;border-bottom:1px solid var(--line)}.bar-column{height:100%;flex:1;display:flex;flex-direction:column;justify-content:end;align-items:center;gap:8px}.bar-column i{display:block;width:min(44px,80%);border-radius:8px 8px 2px 2px;background:linear-gradient(180deg,#8d79ed,var(--purple))}.bar-column span{color:var(--muted);font-size:.7rem}.report-summary{display:grid;align-content:start;gap:12px}.report-line{padding:14px 0;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.report-line span{color:var(--muted)}.report-line strong{text-align:right}
.modal-backdrop{position:fixed;inset:0;padding:24px;display:grid;place-items:center;background:rgba(21,18,39,.6);backdrop-filter:blur(5px);z-index:50}.modal{position:relative;width:min(680px,100%);max-height:calc(100vh - 48px);overflow-y:auto;padding:30px;border-radius:18px;background:#fff;box-shadow:0 30px 90px rgba(12,10,27,.25)}.modal-small{width:min(480px,100%)}.modal-close{position:absolute;top:18px;right:18px;width:36px;height:36px;border:0;border-radius:9px;color:var(--muted);background:#f2f1f6;font-size:1.4rem}.modal h2{margin-bottom:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.modal label>span,fieldset legend{display:block;margin-bottom:8px;color:#5d596c;font-size:.78rem;font-weight:600}.modal input,.modal select{width:100%;padding:0 12px}.modal form>label{display:block;margin:15px 0}fieldset{grid-column:1/-1;padding:0;border:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}fieldset legend{grid-column:1/-1}.radio-card{padding:13px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px}.radio-card:has(input:checked){border-color:var(--purple);background:#faf9ff}.radio-card input{width:auto;min-height:0;accent-color:var(--purple)}.radio-card>span{margin:0!important;color:var(--purple)!important;font-size:1.15rem!important}.radio-card strong,.radio-card small{display:block}.radio-card small{margin-top:2px;color:var(--muted);font-size:.68rem}.file-upload{grid-column:1/-1}.file-upload input{position:absolute;opacity:0;pointer-events:none}.file-upload div{min-height:90px;padding:20px;display:grid;place-items:center;text-align:center;border:1.5px dashed #c9c5dc;border-radius:11px;background:#fafafe;cursor:pointer}.file-upload div strong{color:var(--purple);font-size:.82rem}.file-upload div small{color:var(--muted);font-size:.7rem}.calculated-field{margin:15px 0;padding:15px;display:flex;justify-content:space-between;border-radius:10px;background:var(--purple-soft)}.calculated-field span{color:#625c76}.calculated-field strong{color:var(--purple-dark)}.form-actions{margin-top:25px;display:flex;justify-content:flex-end;gap:10px}.toast{position:fixed;right:24px;bottom:24px;max-width:360px;padding:14px 18px;border-radius:11px;color:#fff;background:var(--nav);box-shadow:0 15px 45px rgba(20,18,34,.25);z-index:80;font-size:.82rem}
@media(max-width:1150px){.workspace{padding-inline:26px}.stats-grid{grid-template-columns:repeat(2,1fr)}.panel-toolbar{align-items:stretch;flex-direction:column}.search-field{width:100%}.filters{overflow-x:auto}.reports-view{grid-template-columns:1fr}}
@media(max-width:760px){.app-shell{display:block}.sidebar{transform:translateX(-100%);transition:transform .25s ease}.sidebar.open{transform:translateX(0)}.workspace{padding:0 16px 30px}.topbar{height:72px}.mobile-menu{display:block;width:40px;height:40px;border:1px solid var(--line);border-radius:10px;background:#fff}.role-switcher{margin-inline:auto}.topbar-actions .icon-button{display:none}.primary-button{padding-inline:13px}.page-head{padding-top:27px}.date-stamp{display:none}.stats-grid{grid-template-columns:1fr 1fr}.stat-card{min-height:104px;padding:14px}.stat-icon{width:38px;height:38px}.form-grid{grid-template-columns:1fr}fieldset,.file-upload{grid-column:1}.filters{padding-bottom:4px}.select-wrap select{min-width:132px}}
@media(max-width:500px){.role-pill{padding-inline:9px;font-size:.72rem}.topbar-actions .primary-button{font-size:0;width:42px;padding:0}.topbar-actions .primary-button span{margin:0;font-size:1.4rem}.stats-grid{grid-template-columns:1fr}.stat-card{min-height:88px}.modal-backdrop{padding:10px}.modal{padding:24px 18px}fieldset{grid-template-columns:1fr}}
.finance-button{border:1px solid #ddd8fa;border-radius:8px;padding:6px 9px;color:var(--purple-dark);background:#f7f5ff;font-size:.7rem;font-weight:600}.locked-action{color:#aaa6b6}.bar-column strong{color:#5f5a70;font-size:.65rem}
.workflow-badge{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border-radius:7px;padding:6px 9px;font-size:.7rem;font-weight:600}.workflow-badge i{width:6px;height:6px;border-radius:50%;background:currentColor}.workflow-badge.in-work{color:#4475aa;background:#eaf3fb}.workflow-badge.finish{color:var(--green);background:var(--green-soft)}.stats-grid.publisher-stats{grid-template-columns:minmax(0,1fr)}.stats-grid.publisher-stats .stat-card{max-width:360px}.finish-check{margin-top:18px!important;padding:14px;display:flex!important;align-items:center;gap:10px;border:1px solid var(--line);border-radius:10px;background:#fafafe}.finish-check input{width:18px!important;min-height:18px;accent-color:var(--purple)}.finish-check span{margin:0!important}
@media(max-width:760px){.stats-grid.publisher-stats{grid-template-columns:1fr}}
input:disabled{color:#aaa7b5;background:#f1f0f4;cursor:not-allowed}
.stats-toolbar{margin-bottom:12px;display:flex;align-items:center;justify-content:space-between}.stats-toolbar>strong{font:700 .9rem "Manrope",sans-serif}.stats-period{padding:3px;display:flex;gap:2px;border:1px solid var(--line);border-radius:9px;background:#ecebf2}.stats-period button{min-height:32px;padding:0 12px;border:0;border-radius:6px;color:var(--muted);background:transparent;font-size:.72rem;font-weight:600}.stats-period button.active{color:var(--purple-dark);background:#fff;box-shadow:0 2px 8px rgba(35,30,63,.08)}
.file-link,.file-name{display:inline-block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:middle;text-align:left}
.pagination{align-items:center}.pagination>span{padding:0 8px;white-space:nowrap}
.delete-user-button{color:var(--red);background:var(--red-soft)}
.user-row{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.user-row p{color:var(--muted);font-size:14px;margin:8px 0}.user-row .form-actions{justify-content:flex-start;flex-wrap:wrap;margin:12px 0 0}.user-row button:disabled{opacity:.45;cursor:not-allowed}#usersMessage{color:var(--purple-dark);font-size:14px}#usersView{grid-template-columns:minmax(260px,1fr) minmax(320px,1.4fr);align-items:start}@media(max-width:820px){#usersView{grid-template-columns:1fr}}
button:focus-visible,a:focus-visible{outline:3px solid #9988ed;outline-offset:3px}
.filters{flex-wrap:wrap}.transaction-row small{overflow-wrap:anywhere}
@media(max-width:500px){.stats-toolbar{align-items:flex-start;gap:10px;flex-direction:column}.stats-period{width:100%}.stats-period button{flex:1}}
.header-balance{min-width:112px;padding:7px 13px;border:1px solid var(--line);border-radius:11px;background:#fff}.header-balance span{display:block;color:var(--muted);font-size:.65rem}.header-balance strong{display:block;margin-top:2px;color:var(--green);font:700 .88rem "Manrope",sans-serif}.finance-view{display:grid;grid-template-columns:minmax(220px,.7fr) minmax(300px,1fr);gap:18px}.balance-card,.money-form,.transactions-card{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:var(--shadow)}.balance-card{min-height:220px;padding:26px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,#27223d,#3c3268);color:#fff}.balance-card .eyebrow{color:#b9adff}.balance-card>strong{font:800 clamp(2rem,4vw,3.2rem) "Manrope",sans-serif;letter-spacing:-.05em}.balance-card>span{margin-top:8px;color:#aaa2c6;font-size:.78rem}.money-form{padding:24px;display:grid;gap:15px}.money-form label>span{display:block;margin-bottom:8px;color:#5d596c;font-size:.78rem;font-weight:600}.money-form label i{color:var(--muted);font-size:.68rem;font-style:normal;font-weight:400}.money-form input,.money-form select,.money-form textarea{width:100%;padding:0 12px}.money-form textarea{padding-block:10px;resize:vertical;border:1px solid #dedde7;border-radius:9px;color:var(--ink);background:#fff;outline:none;font:inherit}.money-form textarea:focus{border-color:#9c8ee9;box-shadow:0 0 0 3px rgba(104,82,216,.09)}.money-form .primary-button{justify-self:start}.withdraw-button{background:var(--red)!important;box-shadow:0 7px 17px rgba(207,79,93,.2)!important}.transactions-card{grid-column:1/-1;padding:24px}.transactions-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.transactions-head>span{color:var(--muted);font-size:.72rem}.transactions-list{display:grid}.transaction-row{padding:15px 2px;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:12px;border-top:1px solid var(--line)}.transaction-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;font-size:1.2rem;font-weight:700}.transaction-icon.deposit{color:var(--green);background:var(--green-soft)}.transaction-icon.withdraw{color:var(--red);background:var(--red-soft)}.transaction-row strong,.transaction-row small{display:block}.transaction-row small{margin-top:4px;color:var(--muted);font-size:.7rem}.transaction-amount{text-align:right}.transaction-amount.deposit>strong{color:var(--green)}.transaction-amount.withdraw>strong{color:var(--red)}.empty-transactions{padding:44px 10px;border-top:1px solid var(--line);color:var(--muted);text-align:center;font-size:.82rem}
@media(max-width:820px){.finance-view{grid-template-columns:1fr}.transactions-card{grid-column:1}.header-balance{min-width:96px;padding-inline:10px}}
@media(max-width:500px){.transaction-row{grid-template-columns:38px minmax(0,1fr)}.transaction-amount{grid-column:2;text-align:left}}
.login-view{min-height:100vh;padding:32px;display:grid;grid-template-rows:auto 1fr auto;place-items:center;background:radial-gradient(circle at 20% 10%,rgba(112,88,225,.28),transparent 30%),linear-gradient(145deg,#1f1c31,#2c2746);color:#fff}.login-brand{display:flex;align-items:center;gap:12px;font:800 1.3rem "Manrope",sans-serif}.login-brand>span:last-child span{color:#9a89ff}.login-card{align-self:center;width:min(430px,100%);padding:36px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:#fff;color:var(--ink);box-shadow:0 30px 90px rgba(8,6,20,.3)}.login-card h1{font-size:2rem}.login-card>p:not(.eyebrow){margin:8px 0 26px;color:var(--muted)}.login-card label{display:block;margin-top:16px}.login-card label span{display:block;margin-bottom:8px;color:#5d596c;font-size:.78rem;font-weight:600}.login-card input{width:100%;padding:0 13px}.login-card .primary-button{width:100%;margin-top:22px}.login-error{margin-top:15px;padding:11px 13px;border-radius:9px;color:#a63d4a;background:var(--red-soft);font-size:.78rem}.login-footer{color:#8f89a7;font-size:.7rem}.current-role{padding:7px 13px;border:1px solid var(--line);border-radius:11px;background:#fff}.current-role span{display:block;color:var(--muted);font-size:.65rem}.current-role strong{display:block;margin-top:2px;color:var(--purple-dark);font-size:.82rem}.profile-card .icon-button:hover{color:#fff;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.08)}
@media(max-width:500px){.login-view{padding:20px}.login-card{padding:28px 20px}.current-role{padding-inline:9px}.current-role span{display:none}}
.order-comment-field{grid-column:1/-1;min-width:0}
.order-comment-field textarea{display:block;box-sizing:border-box;width:100%;max-width:100%;min-height:100px;padding:12px;resize:vertical;border:1px solid #dedde7;border-radius:9px;color:var(--ink);background:#fff;font:inherit}
.order-comment-field textarea:focus{outline:none;border-color:#9c8ee9;box-shadow:0 0 0 3px rgba(104,82,216,.09)}
.edit-order-button,.remove-report-button{display:inline-grid;place-items:center;width:36px;height:36px;padding:6px;border:1px solid var(--line);border-radius:8px;background:#fff;cursor:pointer;vertical-align:middle}
.edit-order-button{color:var(--purple)}
.edit-order-button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.edit-order-button:hover{background:var(--purple-soft)}
.current-report-row{grid-column:1/-1;display:flex;align-items:center;gap:10px;min-width:0}
.current-report-row>span{flex:1;min-width:0;overflow-wrap:anywhere;font-size:.82rem}
.remove-report-button{flex-shrink:0;color:#c73545;border-color:#f0c7cd;background:#fff4f5;font-size:25px;line-height:1}
.remove-report-button:hover{background:#ffe4e8}
.edit-order-button:focus-visible,.remove-report-button:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.order-actions-cell{width:1%;white-space:nowrap}
.order-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
.order-row-actions button{flex-shrink:0;height:36px;margin:0;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;cursor:pointer}
.order-row-actions .edit-order-button{width:36px;border-color:transparent;background:transparent;color:#746b91}
.order-row-actions .edit-order-button:hover{background:#f0edf9;color:var(--purple)}
.order-payment-button{gap:6px;padding:0 11px;border:1px solid #ddd8fa;background:#f7f5ff;color:var(--purple-dark);font-size:.75rem;font-weight:600}
.order-payment-button:hover{background:#eee9ff;border-color:#bfb1f1}
.order-payment-button span{font-size:15px;font-weight:700}
.order-delete-button{width:36px;margin-left:4px!important;padding:8px;border:1px solid transparent;background:transparent;color:#b65d68}
.order-delete-button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.order-delete-button:hover{color:#b42f40;background:#fff0f2;border-color:#f2c9d0}
.order-row-actions button:focus-visible{outline:2px solid var(--purple);outline-offset:2px}
@media(pointer:coarse){.order-row-actions button{min-width:44px;height:44px}}
.order-actions-cell,.order-actions-heading{position:sticky;right:0;z-index:2;background:#fff;box-shadow:-7px 0 12px -10px rgba(42,32,72,.4)}
.order-actions-heading{background:#faf9fd}
#ordersTableBody tr:hover .order-actions-cell{background:#faf9ff}
.notification-wrap{position:relative}
#notificationToggle{display:inline-flex;position:relative;align-items:center;justify-content:center;flex-shrink:0;width:40px;height:40px;padding:0}
#notificationToggle svg{display:block;width:20px;height:20px;flex:0 0 20px}
#notificationToggle:hover,#notificationToggle[aria-expanded="true"]{color:var(--purple);border-color:#cfc5ee;background:#f7f5ff}
#notificationToggle:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
#notificationCount{position:absolute;right:-5px;top:-5px;min-width:18px;padding:2px 4px;border-radius:12px;background:#d44156;color:#fff;font-size:10px;line-height:14px;text-align:center;box-shadow:0 0 0 2px #fff;pointer-events:none}
#notificationPanel{position:absolute;right:0;top:calc(100% + 12px);width:min(380px,calc(100vw - 32px));background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 16px 45px rgba(24,18,48,.18);z-index:45;overflow:hidden}
#notificationPanel header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;border-bottom:1px solid var(--line)}
#notificationsReadAll{border:0;background:transparent;color:var(--purple);font-size:12px;cursor:pointer}
#notificationsReadAll:disabled{opacity:.45;cursor:default}
#notificationMessage{margin:0;padding:8px 16px;font-size:13px;color:var(--muted)}
#notificationMessage:empty{display:none}
#notificationList{max-height:360px;overflow-y:auto}
.notification-event{display:block;width:100%;padding:14px 16px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;color:var(--ink);cursor:pointer}
.notification-event.unread{background:#f5f2ff;box-shadow:inset 3px 0 var(--purple)}
.notification-event:hover{background:#eee9ff}
.notification-event strong,.notification-event span,.notification-event small{display:block;overflow-wrap:anywhere}
.notification-event strong{font-size:13px}.notification-event span{font-size:12px;margin-top:5px}.notification-event small{font-size:11px;margin-top:6px;color:var(--muted)}
#notificationPanel>small{display:block;padding:10px 16px;font-size:10px;color:var(--muted);border-top:1px solid var(--line)}
@media(max-width:500px){#notificationPanel{position:fixed;top:72px;right:16px}}
/* Affiliate management uses the same controls and spacing as Finance. */
.affiliate-create{margin:18px 0;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));align-items:end}.affiliate-create h2{grid-column:1/-1}.affiliate-create input,.affiliate-create select{min-width:0;width:100%}#affiliatesView .orders-panel{margin-top:20px}#affiliatesView .stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}#affiliatesMessage{color:var(--muted);padding:8px 0}#affiliatesView .table-wrap{overflow-x:auto}#affiliatesView table{width:100%}#affiliatesView small{display:block;color:var(--muted)}
.order-cell-edit{display:block;max-width:100%;border:0;border-radius:6px;background:transparent;color:inherit;font:inherit;text-align:left;padding:5px 6px;margin:-5px -6px;cursor:pointer}
.order-cell-edit:hover{background:#f0edff;box-shadow:0 0 0 1px #d9d1fc}
.order-cell-edit:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
.order-cell-edit + .order-cell-edit{margin-top:5px}
.order-note-cell{min-width:220px;width:280px;vertical-align:top}
.order-note-text{display:block;white-space:pre-wrap;overflow-wrap:anywhere;min-width:200px;max-width:360px;line-height:1.55}
.affiliate-actions-cell{width:1%;white-space:nowrap}
.affiliate-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:nowrap}
.affiliate-row-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex:none;min-height:40px;margin:0;border:1px solid transparent;border-radius:8px;padding:8px 11px;font:inherit;font-weight:600;cursor:pointer}
.affiliate-row-actions svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.affiliate-clients-button{color:var(--purple);background:var(--purple-soft)}
.affiliate-clients-button:hover{background:#e7dfff}
.affiliate-row-actions .affiliate-edit-button{width:40px;padding:8px;color:var(--muted);background:transparent;border-color:var(--line)}
.affiliate-row-actions .affiliate-edit-button:hover{color:var(--purple);background:var(--purple-soft);border-color:#cfc3f7}
.affiliate-row-actions button:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
.payment-link{display:inline-block;margin-top:9px;color:var(--purple);font-size:.75rem;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
.payment-link:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
