:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:#172033; background:#f4f7fb; }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:radial-gradient(circle at 15% 0%, #dceaff, transparent 35rem), #f4f7fb; }
.shell { min-height:100vh; display:grid; place-items:center; padding:24px; }
.card { width:min(100%, 440px); background:#fff; border:1px solid #e3e8f1; border-radius:18px; box-shadow:0 18px 50px #16223d18; padding:38px; }
.brand { display:flex; align-items:center; gap:10px; font-weight:750; letter-spacing:.04em; color:#172f60; }
.brand-button { padding:0; border:0; border-radius:0; background:transparent; color:inherit; }.brand-button:hover { background:transparent; color:#0086bd; }
.brand-mark { display:grid; place-items:center; height:31px; width:31px; border-radius:9px; color:#fff; background:linear-gradient(145deg,#2264ca,#173d83); letter-spacing:0; }
h1 { margin:27px 0 8px; font-size:27px; letter-spacing:-.025em; } .intro { color:#68748b; line-height:1.55; margin:0 0 24px; }
form { display:grid; gap:17px; } label { display:grid; gap:7px; color:#34415b; font-size:14px; font-weight:650; }
input { width:100%; padding:12px 13px; border:1px solid #ccd5e3; border-radius:9px; color:#172033; font:inherit; outline:none; } input:focus { border-color:#2869cf; box-shadow:0 0 0 3px #2869cf20; }
.password-input { position:relative; display:block; }.password-input input { padding-right:45px; }.password-toggle { position:absolute; right:4px; top:4px; width:34px; height:34px; padding:0; color:#54708a; background:transparent; border-radius:6px; font-size:16px; }.password-toggle:hover { color:#0086bd; background:#edfaff; }
.remember-me { display:flex; align-items:center; gap:8px; font-weight:550; cursor:pointer; }.remember-me input { width:16px; height:16px; margin:0; accent-color:#00aaed; }.remember-me small { font-weight:400; color:#728097; }
button { border:0; border-radius:9px; background:#1e58b7; color:#fff; padding:12px 16px; font:inherit; font-weight:700; cursor:pointer; } button:hover { background:#184a9e; } button:disabled { opacity:.6; cursor:wait; }
.filters { display:flex; flex-wrap:wrap; gap:10px; align-items:end; margin:18px 0; }.filters input,.filters select { min-height:38px; padding:8px 10px; border:1px solid #ccd5e3; border-radius:8px; background:#fff; color:#172033; font:inherit; }.filters label { font-size:12px; color:#536078; }.filters button { padding:9px 14px; }.pager { display:flex; justify-content:center; align-items:center; gap:12px; margin-top:18px; }.pager button { padding:8px 11px; }
.notice { margin:22px 0 0; font-size:13px; color:#7a8495; text-align:center; }.error { margin:0; border-radius:8px; padding:10px; color:#9e2630; background:#fff0f1; font-size:14px; }.portal { min-height:100vh; width:100%; background:#f7f9fc; }.topbar { height:68px; padding:0 max(36px,calc((100vw - 1720px)/2)); display:flex; justify-content:space-between; align-items:center; background:#fff; border-bottom:1px solid #e6eaf0; }.user { display:flex; gap:14px; align-items:center; color:#526078; font-size:14px; }.link-button { padding:7px 10px; background:transparent; color:#1e58b7; }.content { width:min(1720px,100%); margin:0 auto; padding:44px 36px 72px; }.content h1 { font-size:32px; }.eyebrow { font-size:12px; font-weight:800; letter-spacing:.1em; color:#4875bd; margin:0; }.organization-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(255px,1fr)); gap:16px; margin:30px 0; }.organization-list[hidden] { display:none !important; margin:0; }.organization { background:#fff; border:1px solid #e1e7f0; border-radius:12px; padding:20px; cursor:pointer; }.organization:hover { border-color:#86a9df; }.organization h2 { margin:0 0 7px; font-size:17px; }.organization p { color:#6d788c; margin:4px 0; font-size:14px; }.role { display:inline-block; margin-top:13px; padding:5px 8px; border-radius:999px; font-size:12px; font-weight:700; color:#23529c; background:#eaf2ff; }.mailbox { width:100%; background:#fff; border:1px solid #e1e7f0; border-radius:16px; padding:24px; }.mailbox-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:18px;margin-bottom:18px;border-bottom:1px solid #dcebf1}.mailbox h2{margin:4px 0 0;font-size:20px}.mailbox-company-meta{margin:4px 0 0;color:#68758a;font-size:13px}.tabs{display:flex;gap:6px}.tabs button{padding:8px 11px;background:#edf2f9;color:#34537f}.tabs button.active{background:#1e58b7;color:#fff}.muted{color:#728097}.document-list{display:grid;gap:10px}.document{border:1px solid #e5eaf1;border-radius:9px;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:18px}.document > :first-child{min-width:0;flex:1 1 auto}.document h3{font-size:15px;margin:0 0 4px;overflow-wrap:anywhere}.document p{font-size:13px;color:#68758a;margin:0;overflow-wrap:anywhere}.document .amount{font-weight:750;white-space:nowrap;flex:0 0 auto}.download{padding:7px 10px;font-size:13px}.attachments{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.attachment{border:1px solid #ccd7e7;border-radius:6px;background:#fff;color:#265aab;padding:5px 7px;font-size:12px;cursor:pointer}@media(max-width:760px) { .card { padding:28px 22px; }.topbar { padding:0 16px; }.content { padding:38px 16px 50px; }.mailbox-heading,.document{align-items:flex-start;flex-direction:column} }
.login-link { display:block; width:max-content; margin:13px auto 0; font-size:14px; }
.mailbox-actions { display:flex; align-items:center; gap:12px; }.manual-send { margin:18px 0; padding:18px; border:1px solid #cbdcf5; border-radius:10px; background:#f7faff; }.manual-send h3 { margin:0 0 5px; }.manual-send p { margin:0; color:#68758a; font-size:13px; }.manual-send form { margin-top:16px; }.manual-send textarea,.manual-send select { width:100%; min-height:42px; padding:10px 12px; border:1px solid #ccd5e3; border-radius:9px; background:#fff; color:#172033; font:inherit; }.manual-send textarea { min-height:100px; resize:vertical; }.manual-send input[type=file] { padding:8px; background:#fff; }.manual-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }.manual-form-actions { display:flex; align-items:center; gap:10px; }.manual-form-actions .attachment { font-size:14px; padding:10px 14px; }
.portal-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:26px; align-items:start; }.portal-menu { position:sticky; top:22px; display:grid; gap:7px; padding:10px; border:1px solid #e1e7f0; border-radius:14px; background:#fff; box-shadow:0 10px 30px rgba(32,58,104,.055); }.portal-menu-item { width:100%; padding:11px 12px; color:#35547e; background:transparent; text-align:left; font-size:14px; }.portal-menu-item:hover { color:#1e58b7; background:#eef4fd; }.portal-menu-item.active { background:#e7f0ff; color:#1e58b7; }.portal-menu-item:disabled { opacity:.45; cursor:not-allowed; }.portal-main { min-width:0; }
.portal-layout:has(.portal-menu[hidden]) { display:block; }
.portal-menu[hidden] { display:none !important; }
@media(max-width:700px) { .portal-layout{grid-template-columns:1fr}.portal-menu{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.portal-menu-item{text-align:center}.mailbox-actions,.manual-grid{align-items:stretch;flex-direction:column;grid-template-columns:1fr}.manual-form-actions{flex-wrap:wrap} }

/* Phoenix visual identity */
:root { --phoenix:#00aaed; --phoenix-dark:#0086bd; --phoenix-soft:#e2f7fe; background:#f2fbfe; }
body { background:radial-gradient(circle at 15% 0%, #d9f5fe, transparent 35rem), #f2fbfe; }
.brand { color:#086384; }.brand-mark { background:linear-gradient(145deg,#00b9ff,#0080b5); }
input:focus { border-color:var(--phoenix); box-shadow:0 0 0 3px #00aaed24; }
button { background:var(--phoenix); } button:hover { background:var(--phoenix-dark); }
.portal { background:#f4fcff; }.topbar { border-bottom-color:#d9eef5; }.link-button,.eyebrow { color:#0086bd; }
.organization,.mailbox,.portal-menu { border-color:#dcebf1; }.organization:hover { border-color:#63d1f3; }
.role,.portal-menu-item.active { color:#007da9; background:var(--phoenix-soft); }
.portal-menu-item:hover { color:#0086bd; background:#edfaff; }.overview-card:hover { border-color:#74d5f4; }
.portal-menu-group { margin:13px 9px 1px; color:#7890a1; font-size:10px; font-weight:800; letter-spacing:.095em; }.portal-menu-group:first-of-type { margin-top:7px; }
.attachment { color:#0086bd; border-color:#bfe3ef; }.tabs button.active { background:var(--phoenix); }
.counterparty-view { margin:18px 0; }.section-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:18px; flex-wrap:wrap; }.section-heading h3 { margin:0 0 4px; }.section-heading p { margin:0; color:#68758a; font-size:13px; }.counterparty-form { width:100%; margin:18px 0; padding:18px; border:1px solid #c9e8f2; border-radius:10px; background:#f8fdff; }.counterparty-form select { width:100%; min-height:42px; padding:10px 38px 10px 12px; border:1px solid #ccd5e3; border-radius:9px; background:#fff; color:#172033; font:inherit; outline:none; }.counterparty-form select:focus { border-color:var(--phoenix); box-shadow:0 0 0 3px #00aaed24; }.counterparty-address { display:grid; grid-template-columns:2fr .7fr 1.25fr 1.4fr; gap:12px; }.counterparty-filters { margin:18px 0 10px; }.counterparty-list { display:grid; gap:10px; }.counterparty { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px; border:1px solid #dcebf1; border-radius:9px; }.counterparty > :first-child { min-width:0; flex:1 1 auto; }.counterparty h3 { margin:0 0 4px; font-size:15px; overflow-wrap:anywhere; }.counterparty p { margin:2px 0; color:#68758a; font-size:13px; overflow-wrap:anywhere; }.counterparty-actions { display:flex; flex:0 0 auto; gap:7px; justify-content:flex-end; flex-wrap:wrap; }.attachment.danger { color:#a8323c; border-color:#f0c6ca; }.attachment.danger:hover { background:#fff4f5; }
.counterparty-form[hidden] { display:none; }
.invoice-settings { margin:18px 0; }.invoice-settings textarea { width:100%; min-height:84px; padding:10px 12px; border:1px solid #ccd5e3; border-radius:9px; background:#fff; color:#172033; font:inherit; resize:vertical; }.invoice-settings textarea:focus { border-color:var(--phoenix); box-shadow:0 0 0 3px #00aaed24; outline:none; }.invoice-settings input[readonly] { background:#f1f5f7; color:#6c7886; }
.invoice-logo-settings { display:grid; gap:10px; padding:14px; border:1px dashed #a9d9e8; border-radius:9px; background:#fff; }.invoice-logo-settings input[type=file] { padding:8px; background:#fff; }.invoice-logo-settings .manual-form-actions { margin:0; }.invoice-logo-settings .muted { font-size:13px; }
.invoice-mode-cards { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:18px; }.invoice-mode-card { display:grid; gap:6px; min-height:116px; padding:18px; text-align:left; background:#fff; color:#14627f; border:1px solid #bfe3ef; }.invoice-mode-card:hover { background:#edfaff; border-color:var(--phoenix); }.invoice-mode-card strong { font-size:16px; }.invoice-mode-card span { color:#68758a; font-weight:400; font-size:13px; line-height:1.4; }.manual-send select { width:100%; min-height:42px; padding:10px 12px; border:1px solid #ccd5e3; border-radius:9px; background:#fff; color:#172033; font:inherit; }.manual-form-actions { flex-wrap:wrap; }
@media(max-width:700px) { .invoice-mode-cards { grid-template-columns:1fr; } }
.entry-lines { display:grid; gap:10px; margin:16px 0; }.entry-line { display:grid; grid-template-columns:30px 1fr 2fr .7fr .8fr 1fr .8fr .8fr 100px auto; gap:8px; align-items:end; padding:12px; border:1px solid #dcebf1; border-radius:9px; }.entry-line label { font-size:11px; }.entry-line input,.entry-line select { min-height:38px; padding:7px 8px; border:1px solid #ccd5e3; border-radius:7px; font:inherit; }.entry-line-number { padding-bottom:10px; color:#728097; font-weight:700; }.line-net { padding-bottom:10px; font-size:13px; white-space:nowrap; }.invoice-totals { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin:18px 0; }.invoice-totals div { display:grid; gap:5px; padding:12px; border:1px solid #dcebf1; border-radius:9px; }.invoice-totals span { color:#68758a; font-size:13px; }.invoice-totals .payable { border-color:#89d9f4; background:#edfaff; }.manual-send textarea { width:100%; min-height:82px; padding:10px 12px; border:1px solid #ccd5e3; border-radius:9px; font:inherit; resize:vertical; }
@media(max-width:1100px) { .entry-line { grid-template-columns:30px 1fr 2fr 1fr 1fr; }.entry-line .line-net { padding-bottom:0; } } @media(max-width:700px) { .entry-line,.invoice-totals { grid-template-columns:1fr; }.entry-line-number { padding:0; } }
@media(max-width:700px) { .section-heading,.counterparty { align-items:stretch; flex-direction:column; }.counterparty-address { grid-template-columns:1fr; } }
.archive-selection { display:flex; align-items:center; gap:6px; padding:4px 2px; color:#526078; font-size:13px; font-weight:700; }
.archive-selection input,.archive-document-select { width:16px; height:16px; accent-color:var(--phoenix); cursor:pointer; }
.document-bulk-workflow{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:14px 0;padding:14px;border:1px solid #bfe3ef;border-radius:11px;background:#f6fcfe}.document-bulk-workflow strong{color:#17617e}.document-bulk-workflow label{display:grid;gap:5px;font-size:12px;font-weight:700;color:#526078}.document-bulk-workflow select,.document-bulk-workflow input{min-height:38px;padding:8px 10px;border:1px solid #ccd5e3;border-radius:8px;background:#fff;font:inherit}.document-bulk-workflow input{min-width:230px}@media(max-width:700px){.document-bulk-workflow{align-items:stretch}.document-bulk-workflow label{width:100%}.document-bulk-workflow input{min-width:0;width:100%}}
.document-saved-filters{display:flex;align-items:end;gap:10px;flex-wrap:wrap;margin:18px 0 10px;padding:13px 14px;border:1px solid #c9e8f2;border-radius:11px;background:#f8fdff}.document-saved-filters label{display:grid;gap:5px;color:#526078;font-size:12px;font-weight:750}.document-saved-filters select,.document-saved-filters input{min-width:215px;min-height:38px;padding:8px 10px;border:1px solid #ccd5e3;border-radius:8px;background:#fff;color:#172033;font:inherit}.document-saved-filters button{padding:9px 13px}.document-saved-filter-name{margin-left:auto}@media(max-width:850px){.document-saved-filter-name{margin-left:0}}@media(max-width:700px){.document-saved-filters{align-items:stretch}.document-saved-filters label,.document-saved-filters select,.document-saved-filters input{width:100%;min-width:0}}
.global-search-form{max-width:720px}.global-search-form input{min-width:min(100%,380px)}
.notification.unread { border-left:4px solid var(--phoenix); }.notification-outbound_failed { border-color:#f0c6cb; background:#fffafb; }.notification-kind{display:inline-block;margin:0 0 7px;padding:4px 7px;border-radius:999px;background:#edf1f5;color:#5d6a7e;font-size:10px;font-weight:850;letter-spacing:.055em}.notification-kind.action{background:#fff0f1;color:#a02d38}.notification-preferences label { display:flex; align-items:center; gap:8px; font-weight:550; }.notification-preferences input { width:16px; height:16px; accent-color:var(--phoenix); }
.document-details-meta{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 20px}.document-details-meta span{background:#e6f7fd;color:#0875a4;border-radius:999px;padding:5px 10px;font-size:.82rem;font-weight:700}.document-details-summary,.document-details-delivery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0 0 18px;border:1px solid #dceaf0;border-radius:10px;overflow:hidden;background:#dceaf0}.document-details-summary>div,.document-details-delivery>div{display:grid;gap:4px;padding:11px 13px;background:#fff}.document-details-summary span,.document-details-delivery span{font-size:11px;font-weight:750;letter-spacing:.04em;text-transform:uppercase;color:#758299}.document-details-summary strong,.document-details-delivery strong{font-size:13px;overflow-wrap:anywhere}.document-details-summary>div:last-child:nth-child(odd){grid-column:1/-1}.document-details-files{margin:0 0 18px}.document-details-files h4,.document-details-delivery h4{grid-column:1/-1;margin:0;padding:12px 13px 2px;background:#fff}.document-details-files .attachment{margin:0 7px 7px 0}.document-details-actions{margin:0 0 4px}.document-details-events{display:grid;gap:10px}.document-detail-event{border:1px solid #dceaf0;border-left:4px solid var(--phoenix);border-radius:9px;padding:12px 14px;background:#fff}.document-detail-event p{margin:5px 0 0}.workflow-dialog h4{margin:26px 0 10px}@media(max-width:600px){.document-details-summary,.document-details-delivery{grid-template-columns:1fr}.document-details-summary>div:last-child:nth-child(odd){grid-column:auto}}
.portal-stats-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.portal-stats-card{border:1px solid #c9e8f2;border-radius:12px;padding:20px;background:#fff}.portal-stats-card h3{margin:0 0 10px;color:#1c506d}.stats-total{display:block;font-size:2.1rem;color:#097eaf;margin-bottom:18px}.stats-lines{display:grid;gap:8px}.stats-lines span{display:flex;justify-content:space-between;gap:12px;color:#65748d}.stats-lines span strong{color:#22314a}.stats-lines .positive strong{color:#087453}.stats-lines .negative strong{color:#ad3440}@media(max-width:720px){.portal-stats-cards{grid-template-columns:1fr}}
.attachments { align-items:center; }
.profile-password { margin-top:26px; }.profile-password h4 { margin:0 0 5px; }.profile-password > p { margin:0; color:#68758a; font-size:13px; }
.directory-filters { margin-top:18px; }.directory-route { display:inline-block; flex:0 0 auto; padding:6px 10px; border-radius:999px; font-size:12px; font-weight:800; white-space:nowrap; }.directory-route-ujp { color:#07624a; background:#e4f7ef; }.directory-route-peppol { color:#075e89; background:#e0f5fd; }.directory-route-internal { color:#5e4a0a; background:#fff7d7; }.directory-route-email { color:#6b3b75; background:#f8e9fb; }.directory-route-unknown { color:#6d788c; background:#edf1f5; }
.inbound-workflow { display:flex; align-items:center; flex-wrap:wrap; gap:7px; margin-top:10px; }.workflow-status { display:inline-block; padding:4px 7px; border-radius:999px; font-size:11px; font-weight:800; }.workflow-new { background:#edf1f5; color:#536078; }.workflow-in_review { background:#fff5d6; color:#785c00; }.workflow-approved { background:#e4f7ef; color:#07624a; }.workflow-rejected { background:#fff0f1; color:#a02d38; }.workflow-by { color:#728097; font-size:12px; }.workflow-dialog { width:min(100% - 32px,680px); border:1px solid #c9e8f2; border-radius:14px; padding:0; box-shadow:0 22px 70px #16223d36; background:#fff; }.workflow-dialog::backdrop { background:#16223d70; }.workflow-dialog form,.workflow-dialog>div { padding:28px; }.workflow-dialog .section-heading { margin:0 0 14px; gap:16px; align-items:flex-start; }.workflow-dialog h3 { margin:0; }.workflow-dialog textarea,.workflow-dialog select { width:100%; min-height:42px; padding:10px 12px; border:1px solid #ccd5e3; border-radius:9px; background:#fff; font:inherit; }.workflow-dialog textarea { min-height:110px; resize:vertical; }
.document-details-journey{margin:0 0 18px}.document-details-journey h4{margin:0 0 10px}.document-journey-step{position:relative;padding:10px 12px 10px 28px;border-left:2px solid #dceaf0}.document-journey-step::before{content:'';position:absolute;left:-7px;top:15px;width:10px;height:10px;border-radius:50%;background:#b9c5d1}.document-journey-step.done::before{background:var(--phoenix)}.document-journey-step.current::before{background:#f4a622}.document-journey-step.failed::before{background:#c43b3b}.document-journey-step strong{display:block}.document-journey-step p{margin:3px 0 0;color:#66758a;font-size:.88rem}.document-journey-step.failed p{color:#a02b2b}

/* Portal polish: one calm, spacious Phoenix visual system. */
:root{--phoenix-orange:#f37024;--phoenix-orange-dark:#d95e18;--phoenix-orange-soft:#fff1e8;--surface:#fff;--surface-subtle:#f8fcfe;--line:#d7eaf1;--ink:#172a3b;--muted:#66778d}
body{color:var(--ink);background:radial-gradient(circle at 6% -8%,#cef4ff 0,transparent 34rem),radial-gradient(circle at 100% 0,#fff0e6 0,transparent 31rem),#f3fbfe}
button,input,select,textarea{transition:border-color .16s ease,box-shadow .16s ease,background .16s ease,transform .16s ease}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:0;box-shadow:0 0 0 4px #00aaed24}
button{box-shadow:0 5px 12px #0086bd20}button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 18px #0086bd2b}button:active:not(:disabled){transform:translateY(0)}
input,select,textarea,.manual-send select,.counterparty-form select{border-color:#c9dce6;background:#fff;min-height:44px}textarea{min-height:105px}input::placeholder,textarea::placeholder{color:#9aa9b7}
.topbar{height:76px;background:#ffffffeb;backdrop-filter:blur(16px);border-bottom:1px solid #d5eaf2;box-shadow:0 2px 14px #12516908}.topbar .brand{font-size:15px}.brand-mark{height:35px;width:35px;border-radius:11px;box-shadow:0 6px 14px #0086bd35}.user{gap:5px}.link-button{border-radius:8px}.link-button:hover{background:#edfaff}
.content{width:min(1780px,100%);padding:34px 38px 84px}.portal-layout{grid-template-columns:258px minmax(0,1fr);gap:30px}.portal-menu{top:24px;padding:12px;border:1px solid var(--line);border-radius:18px;box-shadow:0 18px 42px #17506d12}.portal-menu-item{position:relative;padding:11px 13px;border-radius:10px;box-shadow:none;font-weight:700;letter-spacing:-.01em}.portal-menu-item:hover{transform:none}.portal-menu-item.active{box-shadow:none}.portal-menu-item.active::before{content:'';position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:3px;background:var(--phoenix)}.portal-menu-group{margin:18px 10px 4px;color:#8295a4}.portal-menu-group:first-of-type{margin-top:6px}.portal-menu-item[data-portal-view="compose"]{color:#b94e12}.portal-menu-item[data-portal-view="compose"]:hover,.portal-menu-item[data-portal-view="compose"].active{background:var(--phoenix-orange-soft);color:#b94e12}.portal-menu-item[data-portal-view="compose"].active::before{background:var(--phoenix-orange)}
.portal-main{min-width:0}.portal-main>.counterparty-view,.portal-main>.invoice-settings{margin:0;padding:28px 30px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 14px 36px #17506d0c}.section-heading{padding-bottom:18px;border-bottom:1px solid #e4f0f4}.section-heading h3{font-size:21px;letter-spacing:-.025em}.section-heading p{max-width:680px;line-height:1.5}.eyebrow{font-size:11px;letter-spacing:.12em}
#portal-welcome{padding:16px 4px 2px}#portal-welcome h1{font-size:36px;margin:9px 0 10px;letter-spacing:-.04em}.organization-list{gap:18px;margin:28px 0}.organization{position:relative;min-height:148px;padding:23px;border-radius:16px;border-color:var(--line);box-shadow:0 10px 26px #17506d0a;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.organization:hover{transform:translateY(-3px);border-color:#79d9f5;box-shadow:0 18px 35px #17506d16}.organization h2{font-size:18px}.organization .role{color:#05789f;background:#e3f8ff}
.mailbox{border-radius:20px;padding:30px;border-color:var(--line);box-shadow:0 16px 42px #17506d0d}.mailbox-heading{padding-bottom:22px;margin-bottom:24px}.mailbox h2{font-size:24px;letter-spacing:-.03em}.tabs{padding:4px;border:1px solid #d7e8ef;border-radius:11px;background:#f4fafc}.tabs button{border-radius:7px;box-shadow:none;font-size:13px}.tabs button:hover{transform:none;box-shadow:none}.tabs button.active{box-shadow:0 4px 10px #0086bd24}
.filters,.document-saved-filters{gap:12px;padding:15px;border:1px solid #dcecf2;border-radius:13px;background:var(--surface-subtle)}.filters{margin:20px 0}.filters input,.filters select{border-color:#c9dce6;background:#fff}.filters button{padding:10px 16px}.document-saved-filters{margin:0 0 12px}.document-saved-filter-name{margin-left:0}.document-saved-filters button,.filters .attachment{box-shadow:none}
.document-list,.counterparty-list{gap:12px}.document,.counterparty{padding:17px 18px;border-color:#dcebf1;border-radius:13px;background:#fff;box-shadow:0 3px 10px #17506d05;transition:border-color .16s ease,box-shadow .16s ease}.document:hover,.counterparty:hover{border-color:#9adcf0;box-shadow:0 9px 20px #17506d0d}.document h3,.counterparty h3{font-size:15px}.document .amount{padding:8px 10px;border-radius:9px;background:#effbfe;color:#056b91}.attachments{margin-top:11px}.attachment{border-radius:8px;padding:6px 9px;background:#fff;box-shadow:none;font-weight:700}.attachment:hover{transform:translateY(-1px);box-shadow:0 4px 9px #0086bd14}.pager{margin-top:24px}.pager span{min-width:100px;text-align:center;color:var(--muted);font-size:13px;font-weight:650}.pager button{box-shadow:none}
.manual-send,.counterparty-form{margin:22px 0;padding:22px;border-color:#c7e7f1;border-radius:15px;background:linear-gradient(135deg,#f8fdff,#fff)}.manual-send>div>h3,.counterparty-form h3{font-size:19px}.invoice-mode-cards{gap:14px}.invoice-mode-card{min-height:128px;padding:20px;border-radius:13px;border-color:#bfe5f0;box-shadow:none}.invoice-mode-card:hover{transform:translateY(-2px);box-shadow:0 10px 20px #0086bd12}.invoice-mode-card:last-child strong{color:#b94e12}.invoice-mode-card:last-child:hover{border-color:#f5b38b;background:#fff9f5}.manual-form-actions{margin-top:4px;gap:11px}.manual-form-actions button:not(.attachment){background:linear-gradient(135deg,#00aaed,#0086bd)}.manual-form-actions button:not(.attachment):hover{background:linear-gradient(135deg,#00b9ff,#007eae)}
.counterparty-address{gap:14px}.invoice-settings textarea,.manual-send textarea{border-color:#c9dce6}.invoice-logo-settings{border-radius:12px;background:#f9fdff}.entry-lines{gap:12px}.entry-line{padding:15px;border-radius:12px;border-color:#d8eaf1;background:#fcfeff}.invoice-totals{gap:12px}.invoice-totals div{border-radius:12px;background:#fff}.invoice-totals .payable{border-color:#f6b287;background:var(--phoenix-orange-soft)}.invoice-totals .payable strong{color:#b94e12}.document-bulk-workflow{border-radius:13px;background:#f7fcfe}.portal-stats-card{border-radius:15px;box-shadow:0 8px 18px #17506d0a}.stats-total{color:#0086bd}.notification-kind.action{background:var(--phoenix-orange-soft);color:#b94e12}.notification.unread{border-left-color:var(--phoenix-orange)}
.workflow-dialog{border-color:#cbeaf3;border-radius:18px}.workflow-dialog form,.workflow-dialog>div{padding:30px}.document-details-meta span{background:#e5f9ff;color:#05789f}.document-details-summary,.document-details-delivery{border-color:#dcecf2;background:#dcecf2}.document-detail-event{border-radius:12px}.document-journey-step.done::before{background:var(--phoenix)}.document-journey-step.current::before{background:var(--phoenix-orange)}
@media(max-width:900px){.content{padding:26px 22px 62px}.portal-layout{grid-template-columns:220px minmax(0,1fr);gap:20px}.portal-main>.counterparty-view,.portal-main>.invoice-settings,.mailbox{padding:23px}.counterparty-address{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.topbar{height:66px}.content{padding:22px 15px 52px}.portal-menu{border-radius:14px;padding:8px;gap:4px}.portal-menu-item{padding:10px 8px;font-size:12px}.portal-menu-group{grid-column:1/-1;margin:12px 5px 0}.portal-main>.counterparty-view,.portal-main>.invoice-settings,.mailbox{padding:19px 16px;border-radius:15px}.section-heading{padding-bottom:14px}.section-heading h3{font-size:19px}#portal-welcome h1{font-size:29px}.organization-list{grid-template-columns:1fr;margin:20px 0}.manual-send,.counterparty-form{padding:17px;border-radius:12px}.filters,.document-saved-filters{padding:12px}.document,.counterparty{padding:14px}.document .amount{align-self:flex-start}.workflow-dialog form,.workflow-dialog>div{padding:20px}.counterparty-address{grid-template-columns:1fr}}

/* Transparent, non-blocking notice for the portal's essential cookies only. */
.notice-link{padding:0;border:0;background:transparent;color:#0086bd;font:inherit;font-weight:750;box-shadow:none;text-decoration:underline}.notice-link:hover{background:transparent;color:#006d98;transform:none;box-shadow:none}.cookie-policy-link{font-size:13px;font-weight:650;box-shadow:none}.cookie-policy-link:hover{transform:none;box-shadow:none}.cookie-notice{position:fixed;z-index:50;right:24px;bottom:24px;display:flex;align-items:center;gap:22px;max-width:min(680px,calc(100vw - 32px));padding:17px 18px 17px 20px;border:1px solid #c7e9f4;border-radius:16px;background:#fffffff2;box-shadow:0 18px 52px #17506d24;backdrop-filter:blur(16px)}.cookie-notice strong{color:#1e4f69;font-size:14px}.cookie-notice p{margin:5px 0 0;color:#63758a;font-size:13px;line-height:1.45}.cookie-notice-actions{display:flex;flex:0 0 auto;align-items:center;gap:9px}.cookie-notice-actions button{white-space:nowrap;box-shadow:none}.cookie-notice-actions button:last-child{background:linear-gradient(135deg,#00aaed,#0086bd)}.cookie-policy-dialog{width:min(100% - 32px,760px)}.cookie-policy-dialog code{padding:2px 5px;border-radius:5px;background:#edf7fa;color:#087396;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86em}.cookie-policy-section{padding:15px 0;border-bottom:1px solid #e3eff3}.cookie-policy-section:last-child{border-bottom:0;padding-bottom:0}.cookie-policy-section h4{margin:0 0 6px;color:#21475c;font-size:15px}.cookie-policy-section p{margin:5px 0;color:#607389;line-height:1.55;font-size:14px}.cookie-policy-section a{color:#0086bd}@media(max-width:700px){.cookie-policy-link{display:none}.cookie-notice{right:16px;bottom:16px;left:16px;display:grid;gap:13px;padding:16px}.cookie-notice-actions{justify-content:flex-end}.cookie-notice-actions button{padding:9px 12px}}
