/* Approved graphite visual system. Presentation only; workflow stays server-side. */
:root{--bg:#101215;--panel:#191d23;--line:#2c323c;--ink:#eef1f5;--muted:#a2adbc;--red:#dc4439}body{background:var(--bg);font-size:14px}.portal-shell{padding-left:224px}.portal-shell>header{width:224px;background:#14171b;border-color:#292e35;padding:30px 20px;gap:26px}.portal-shell header img{width:176px}.portal-shell header .product{font-size:10px;letter-spacing:2px;color:#8c96a4}.portal-shell header nav{gap:6px}.portal-shell header nav>a{padding:12px 15px;border-radius:8px;font-size:13px;color:#adb7c5}.portal-shell header nav>a[aria-current=page]{background:#282023;color:#ff8a80;border-left-color:#ec5145}.portal-shell header nav>a::before{content:'◫';display:inline-block;width:22px;font-size:17px;margin-right:8px}.portal-shell header nav>a[href*="orders"]::before{content:'▤'}.portal-shell header nav>a[href*="support"]::before{content:'◌'}.portal-shell header nav>a[href*="account"]::before{content:'○'}.nav-menu summary{font-size:12px;border-color:#343c47;border-radius:7px}.portal-identity{display:flex;gap:12px;align-items:center;border-top:1px solid #2b3037;padding-top:20px;margin-top:25px;font-size:12px;overflow-wrap:anywhere}.portal-identity small{font-size:10px;margin-top:4px}.identity-dot{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:#303943;color:#b1c1d4}.portal-shell main{max-width:1600px;padding:0 40px 40px}.portal-topbar{height:76px;display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid #292e35;font-size:12px;color:#a3adba;margin-bottom:28px}.portal-shell h1{font-size:32px;letter-spacing:-1px;line-height:1.2;margin:8px 0 12px}.portal-shell h2{font-size:18px;letter-spacing:-.3px;margin-bottom:18px}.portal-shell h3{font-size:14px}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#99a5b5}.panel,.auth,.table-wrap{box-shadow:none}.panel{padding:23px;border:1px solid var(--line);border-radius:12px}.portal-shell button:not(.link):not(.secondary):not(:disabled),.portal-shell .button:not(.secondary){background:#dc4439;border-color:#dc4439;box-shadow:none;text-shadow:none}.portal-shell button,.portal-shell .button{font-size:12px;line-height:1.6;min-height:43px;border-radius:7px;padding:11px 17px}.portal-shell button:hover,.portal-shell .button:hover{filter:brightness(1.12)}.secondary{background:#242b35;border-color:#424b59}.portal-shell a:focus-visible,.portal-shell button:focus-visible{outline:2px solid #fa8175;outline-offset:4px}.badge{border-radius:5px;font-size:11px;padding:4px 9px;line-height:1.6}.badge.status-completed{background:#20342d;color:#91dcb7;border-color:#354e42}.badge.status-working,.badge.status-paid{background:#273344;color:#b7d4f8;border-color:#3b4a5d}.badge.status-quoted,.badge.status-awaiting_payment{background:#382f20;color:#e9c57c;border-color:#54452d}.heading{margin:25px 0}.live-inbox{margin:0 0 25px;font-size:12px;padding:14px 18px;background:#14191f}.section-top{align-items:center;gap:15px}.section-top .muted,.section-top>a{font-size:11px}.welcome-line{color:#a2adbc;margin:0 0 22px}.modern-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.modern-stats .panel{margin:0}.stat-tile>span{font-size:12px;color:#a2adbc}.stat-tile>strong{display:block;font-size:34px;line-height:1.3;margin:14px 0 5px;letter-spacing:-1px}.stat-tile small{font-size:11px}.stat-tile.warm>strong{color:#e9c57c}.stat-tile.success>strong{color:#83d1a9}.modern-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(285px,1fr);gap:22px}.modern-stack{min-width:0}.modern-stack .panel{margin-bottom:22px}.modern-chart{fill:#ed6556;margin-bottom:0}.modern-chart .chart-axis{stroke:#303741;stroke-dasharray:3 6}.modern-chart text{fill:#9ca9b9;font-size:11px}.modern-dashboard .dashboard-chart>p{font-size:12px}.modern-dashboard .dashboard-hours{display:flex;flex-direction:column;gap:20px}.modern-dashboard .dashboard-hours>div{width:100%}.modern-dashboard .clock-panel{border:0;border-top:1px solid var(--line);padding:20px 0 0}.modern-dashboard .live-clock{font-size:28px;letter-spacing:1px}.modern-dashboard .clock-panel p{font-size:12px}.modern-dashboard .hours-list{max-width:none}.modern-dashboard .hours-list dt,.modern-dashboard .hours-list dd{font-size:12px}.modern-dashboard .dashboard-numbers{gap:18px}.modern-dashboard .dashboard-numbers strong{font-size:26px;color:#dde6ef}.modern-dashboard .next-list a{padding:17px 0;border-color:#303741}.next-list strong{font-size:13px}.next-list span{font-size:12px}.next-list b{color:#f09184}.next-actions .section-top{flex-wrap:wrap}.recent-orders .table-wrap{margin:0;border:0}.recent-orders table{min-width:0}.recent-orders th,.recent-orders td{padding:14px 10px;font-size:12px}.recent-orders th{font-size:10px;color:#99a5b5;background:transparent}.recent-orders td{vertical-align:middle}.recent-orders td small{font-size:10px}.recent-orders td:last-child a{color:#f19a8f;white-space:nowrap}.recent-orders td:nth-child(2){max-width:200px;overflow-wrap:anywhere}.order-grid{grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:22px}.order-grid>section,.order-grid>aside{min-width:0}.order-progress{background:#191d23;border-color:#303741;padding:20px}.receipt-details{margin:15px 0;border:1px solid #303741;border-radius:8px;padding:12px 18px}.receipt-details>summary,.request-details>summary{cursor:pointer;color:#b7c3d2;font-size:12px}.receipt-details .upload-receipt{margin:18px 0 0}.request-details>.panel{border:0;padding:20px 0 0;margin:0;background:transparent}.file-comparison{display:flex;flex-direction:column-reverse;gap:20px}.file-comparison>section{min-width:0}.latest-delivery{border:1px solid #3a5148!important;background:#1d2927!important;border-radius:9px;padding:20px!important}.latest-delivery .eyebrow{color:#91dcb7}.version-changes{background:transparent;border-left:2px solid #778779;font-size:13px}.delivery-instructions{font-size:13px}.file-version strong{font-size:14px}.file-version p{font-size:12px}.message{background:#232831;border:1px solid #313944;padding:16px;font-size:13px}.order-next .next-step-button{margin:0;width:100%}.price{font-size:30px}.estimate-value{font-size:18px!important}.estimate-explanation{font-size:12px}.portal-shell input,.portal-shell select,.portal-shell textarea{border-radius:7px;border-color:#505c6d;font-size:14px;background:#12161c}.task-card,.priority-card{background:#191d23;border-color:#303741;box-shadow:none}.task-card strong,.priority-card strong{color:#edf1f7}.portal-shell .legal-footer{background:#101215;font-size:12px}.health-summary .panel{min-width:0}
@media(min-width:901px){.portal-shell>header{overflow-y:auto;overflow-x:hidden;flex-wrap:nowrap}.portal-shell .nav-menu>div{position:static;max-width:100%}.portal-shell header nav{flex-wrap:nowrap}}
@media(max-width:1150px){.modern-dashboard-grid{grid-template-columns:1fr}.modern-stats{gap:12px}.portal-shell main{padding:0 25px 30px}.order-grid{grid-template-columns:minmax(0,1.5fr) minmax(280px,1fr)}}
@media(max-width:900px){.portal-shell{padding-left:0}.portal-shell>header{position:relative;width:100%;padding:18px 5%;display:flex;flex-wrap:wrap;gap:15px}.portal-shell header img{width:160px}.portal-shell header nav{flex-direction:row;flex-wrap:wrap;width:100%;gap:5px}.portal-shell header nav>a{font-size:12px;padding:10px}.portal-shell header nav>a::before{width:16px;margin-right:6px}.portal-identity{display:none}.portal-shell main{padding:0 5% 28px}.order-grid{grid-template-columns:1fr}.portal-topbar{height:60px}.portal-shell .nav-menu>div{z-index:70}.modern-dashboard-grid{grid-template-columns:1fr}}
@media(max-width:650px){.modern-stats{grid-template-columns:1fr 1fr}.stat-tile>strong{font-size:28px}.modern-stats .panel{padding:16px}.portal-shell h1{font-size:28px}.panel{padding:18px}.portal-shell input,.portal-shell select,.portal-shell textarea{font-size:16px}.recent-orders .order-cards td{padding:8px 0}.recent-orders .order-cards td:nth-child(2){max-width:none}.recent-orders table{min-width:0}.modern-dashboard .section-top{flex-wrap:wrap}.latest-delivery{padding:16px!important}.file-version .button{width:100%}.file-version .badge{max-width:100%}.portal-shell header nav>a{padding:8px}.portal-shell header nav>a::before{display:none}.portal-shell .nav-menu summary{padding:9px}.heading{gap:15px}.stat-tile small{line-height:1.5}}

.portal-shell header nav>a{justify-content:flex-start;gap:0}.portal-shell header nav>a .unread-count{margin-left:auto}.modern-dashboard .next-list{display:block}.modern-dashboard .next-actions{background:#191d23}.modern-dashboard .next-list>a{display:flex;gap:16px}.order-progress .progress-heading h2{font-size:14px;margin-bottom:12px}.order-progress .progress-steps{margin:8px 0}.order-progress .progress-steps li{padding-top:10px}.order-progress .step-number{width:24px;height:24px;font-size:11px;margin-bottom:8px}.order-progress .progress-steps strong{font-size:12px}.order-progress .progress-steps small{font-size:10px}.advanced-orders>summary{cursor:pointer;font-weight:600}.portal-shell main>[data-experience]{margin-top:18px}

.file-type{display:inline-grid;place-items:center;min-width:48px;min-height:52px;border:1px solid #52647a;border-radius:7px 14px 7px 7px;background:#243141;color:#bbd7f8;font-size:11px;font-weight:700;letter-spacing:1px;float:left;margin:0 14px 12px 0;padding:8px}.file-archive{background:#352e40;color:#dbc3f5;border-color:#685379}.file-version:after{content:'';display:block;clear:both}.chart-period{display:flex;align-items:center;gap:8px;margin:0;flex-wrap:wrap}.chart-period label{margin:0;font-size:11px}.chart-period select{width:auto;margin:0;padding:7px;font-size:12px}.chart-period button{margin:0;padding:7px 10px;min-height:36px}.chart-month-buttons{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.portal-shell .chart-month{font-size:10px;padding:8px 4px;margin:0;min-height:44px}.chart-month strong{display:block;font-size:13px}.chart-month[aria-pressed=true]{border-color:#f38d80;background:#342723}.chart-selection{font-size:12px;min-height:20px}.stage-history{margin:14px 0;border-top:1px solid var(--line);padding-top:10px}.stage-history summary{cursor:pointer;font-size:12px;color:#b5c5d7}.stage-history ol{list-style:none;padding:0 0 0 10px}.stage-history li{border-left:2px solid #435448;padding:8px 16px;margin:8px 0}.stage-history span{display:block;font-size:12px;color:#a9b8c8}.first-order{text-align:center;padding:38px 24px}.first-order p{max-width:560px;margin:16px auto}.first-order h2{font-size:28px}.first-order .button{margin:10px 6px}.first-order-steps{display:flex;justify-content:center;gap:35px;flex-wrap:wrap;margin:28px 0 0;color:#aab6c5;font-size:12px;padding-left:24px}.success-confirmation{border-left:3px solid #83d1a9;box-shadow:none}.is-saving::before,form[data-sending] button[type=submit]::before,form[data-sending] button:not([type])::before,form[data-native-saving] button:not([type=button])::before{content:'';display:inline-block;width:12px;height:12px;border:2px solid #ffffff55;border-top-color:white;border-radius:50%;vertical-align:middle;margin-right:8px;animation:save-spin .8s linear infinite}@keyframes save-spin{to{transform:rotate(360deg)}}
@media(min-width:901px){.compact-mode .panel{padding:16px;margin-bottom:16px}.compact-mode .order-cards td,.compact-mode .order-cards th{padding:10px 14px;vertical-align:middle}.compact-mode .order-cards td:first-child{min-width:160px}.compact-mode .order-cards td .peek-mini{display:inline-block;margin:4px 0;padding:5px 9px;min-height:32px}.compact-mode .task-card,.compact-mode .priority-card{padding:16px}.compact-mode .task-card strong,.compact-mode .priority-card strong{font-size:28px}.compact-mode .heading{margin:18px 0}.compact-mode .order-cards .badge{font-size:11px}.compact-mode .table-wrap{margin:18px 0}}
@media(max-width:650px){.chart-month-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.first-order-steps{display:block;text-align:left;max-width:280px;margin:24px auto}.first-order-steps li{padding:7px 0}.first-order .button{display:block}.file-type{float:none;margin-bottom:12px}.first-order h2{font-size:24px}}@media(prefers-reduced-motion:reduce){.is-saving::before,form[data-sending] button::before,form[data-native-saving] button::before{animation:none}}
/* Client announcements and administrative editor. */
.announcement-editor{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px;align-items:start}
.announcement-editor .panel{min-width:0}.announcement-editor input,.announcement-editor textarea,.announcement-editor select{width:100%;box-sizing:border-box}.announcement-editor input[type=checkbox]{width:auto}
.announcement-status{display:flex;align-items:center;justify-content:space-between;gap:24px}.announcement-status form{flex-shrink:0}.announcement-status p{margin-bottom:0}
.announcement{border-left:4px solid #ee493e;background:linear-gradient(110deg,#2c2020,#191c20);overflow-wrap:anywhere}
.announcement .announcement-label{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#ffb4ab;margin-bottom:10px}
.announcement strong{display:block;font-size:20px}.announcement small{color:#c1c6cd}.announcement-hours{border-left-color:#ffbe60}.announcement-holiday{border-left-color:#8fb9ff}.announcement-delay{border-left-color:#ff9365}
.announcement-preview .announcement{margin-top:20px}.announcement-preview .preserve{white-space:pre-wrap}
@media(max-width:900px){.announcement-editor{grid-template-columns:1fr}.announcement-status{align-items:flex-start;flex-direction:column}}
