/* Optional arcade skin: presentation only. */
body.retro{--arc-bg:#101027;--arc-panel:#191936;--arc-line:#515184;--arc-cyan:#6ef7f1;--arc-pink:#ff70c8;background:var(--arc-bg);color:#ededff;font-family:'Courier New',monospace;background-image:linear-gradient(#44446b18 1px,transparent 1px),linear-gradient(90deg,#44446b18 1px,transparent 1px);background-size:24px 24px}
body.retro :is(button,input,select,section,dialog,.scroll,.metric,.compact-controls,.popover-body,.project-includes,.tracker-controls,.tracker-project,.month-tile){border-radius:0!important;font-family:inherit}
body.retro>header{background:#15152d;color:#6ef7f1;border-bottom:3px solid #ff70c8;box-shadow:0 4px 0 #050516}
body.retro>header h1{font-size:30px;letter-spacing:2px;text-transform:uppercase;text-shadow:3px 3px #6d287a;font-weight:900}
body.retro>header>a:has(img){background:#22223c;border:2px solid #515184;box-shadow:4px 4px #060611}
body.retro>header .back{color:#f8db75}body.retro>header>#nav-toggle{background:#242447;color:#6ef7f1;border:2px solid #6ef7f1}
body.retro #sidebar{background:#16162e;border-right:2px solid #515184;color:#dddffa}
body.retro .sidebar-title{color:#ff70c8;letter-spacing:2px}
body.retro #companies :is(button,summary,.company-links button,.people-nav,.capex-nav){color:#c4c6e7;background:transparent;border-color:#515184;border-radius:0}
body.retro #companies :is(button:hover,summary:hover,.selected-company){background:#29294b;color:#6ef7f1}
body.retro #companies button[aria-current=true],body.retro #companies .company-links button[aria-current=true]{background:#6ef7f1;color:#101027;box-shadow:4px 4px #070719;border-color:#6ef7f1}
body.retro #companies .company-links,body.retro #companies .company-tree{border-color:#515184}
body.retro :is(section,.compact-controls,.popover-body,dialog){background:#191936;border:2px solid #515184;box-shadow:5px 5px 0 #080819;color:#ededff}
body.retro h2{color:#6ef7f1;font-weight:700;letter-spacing:.5px}
body.retro :is(.sub,.context,.tiny,.crumb,.ownership-footer,.ownership-footer strong,#status,#screen th>small){color:#aeb2d5!important}
body.retro :is(.change-label,.more-summary,.edit-mode){color:#f8db75}
body.retro button{background:#2b2b50;color:#ededff;border:2px solid #7979a3;box-shadow:2px 2px #080819}
body.retro button:hover:not(:disabled){background:#41416b;color:#6ef7f1;border-color:#6ef7f1}
body.retro :is(#save,#fill-apply,#period-apply){background:#ff70c8;color:#171125;border-color:#ffafe0;box-shadow:3px 3px #6d287a}
body.retro :is(input,select){background-color:#101027!important;color:#f1f1ff!important;border-color:#65658c!important}
body.retro select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M0 0h12L6 8z' fill='%236ef7f1'/%3E%3C/svg%3E")}
body.retro input[type=checkbox]{accent-color:#ff70c8}
body.retro .metric,body.retro .metric:nth-child(n){background:#1b1b39;border:2px solid #515184;border-top:4px solid #6ef7f1;box-shadow:4px 4px #080819}
body.retro .metric span{color:#b7b9db;font-size:12px;text-transform:uppercase}body.retro .metric strong{color:#6ef7f1;font-family:'Courier New',monospace;font-weight:700;font-size:25px;letter-spacing:-1px;text-shadow:2px 2px #153c53}
body.retro .negative{color:#ff8db5!important}body.retro .metric:last-child{border-top-color:#ff70c8}
body.retro #screen thead th,body.retro #screen thead th:first-child{background:#34345b;color:#6ef7f1;border-bottom:3px solid #ff70c8}
body.retro #screen tbody tr:nth-child(odd)>td,body.retro #screen tbody tr:nth-child(odd)>th{background:#191936;color:#ededff}
body.retro #screen tbody tr:nth-child(even)>td,body.retro #screen tbody tr:nth-child(even)>th{background:#232342;color:#ededff}
body.retro #screen td.period-total{background:#303050!important;color:#f8db75;border-right-color:#65658c}
body.retro #screen tr.total>td,body.retro #screen tr.total>th{background:#34345b!important;color:#6ef7f1;border-top-color:#6ef7f1}
body.retro #screen tbody tr:not(.total):hover>td,body.retro #screen tbody tr:not(.total):hover>th{background:#383254!important}
body.retro :is(td,th,.scroll){border-color:#414166}body.retro #screen .row-actions button{background:#303050;border-color:#65658c;color:#ededff}
body.retro :is(.project-includes,.tracker-controls,.tracker-project,.month-tile,#fill-preview){background:#232342;color:#dcdcf5;border-color:#65658c}
body.retro .month-tile.selected{background:#393052;border-color:#ff70c8}body.retro .chip{background:#3c3654;color:#f8db75}
body.retro .warning{background:#352c38;color:#f8db75;border:1px solid #b79c55;border-radius:0}
body.retro .plot polyline{stroke:#6ef7f1;filter:drop-shadow(0 0 3px #6ef7f166)}body.retro .plot circle{fill:#ff70c8}body.retro .plot text{fill:#b7b9db}
body.retro #sections{border-color:#515184}body.retro .ownership-footer a{color:#aeb2d5}
#theme-toggle{font-size:12px;padding:8px 12px;white-space:nowrap}
/* Keep financial inputs legible in both edit and VAT read-only modes. */
body.retro #screen input.edit,body.retro #screen input[type=number],body.retro #screen select,body.retro dialog input,body.retro dialog select{background:#101027!important;color:#f1f1ff!important;-webkit-text-fill-color:#f1f1ff!important;opacity:1;border:1px solid #7979a3!important;caret-color:#6ef7f1}
body.retro #screen input:disabled,body.retro #screen select:disabled{background:#282844!important;color:#dce0ff!important;-webkit-text-fill-color:#dce0ff!important;opacity:1;cursor:default}
body.retro input:focus,body.retro select:focus{outline:2px solid #6ef7f1!important;outline-offset:2px}
/* Maze mania — a pocketful of coins and absolutely no dignity. */
body.retro{background-color:#03030d;background-image:radial-gradient(#ffd8a8 1.5px,transparent 2px);background-size:32px 32px;color:#fff;--arc-panel:#05051b}
body.retro>header{background:repeating-linear-gradient(0deg,#050511 0 3px,#090921 3px 5px);border-bottom:6px double #254eff;box-shadow:0 0 18px #244bff88}
body.retro>header h1{color:#fff400;font-family:'Courier New',monospace;font-size:30px;font-weight:900;letter-spacing:2px;text-shadow:3px 0 #ff207c,0 3px #ff207c,5px 5px #122dff}
body.retro>header h1:after{content:'1UP • CASH QUEST • INSERT COIN';display:block;font-size:11px;letter-spacing:3px;color:#5affff;text-shadow:2px 2px #1532bc;margin-top:9px}
body.retro>header>a:has(img){background:#03030d;border:4px double #224fff;box-shadow:0 0 12px #2552ff66}
body.retro #sidebar{background:#03030f;border-right:6px double #254eff;box-shadow:4px 0 16px #1535ff33}
body.retro .sidebar-title{color:#fff400;font-weight:900;letter-spacing:2px}
body.retro #companies :is(button,summary,.company-links button){color:#66ffff;border-color:#244cff;text-transform:uppercase;font-weight:700;font-size:12px}
body.retro #companies button[aria-current=true],body.retro #companies .company-links button[aria-current=true]{background:#fff400;color:#070718;border:3px solid #fffaa0;box-shadow:4px 4px #ff2886}
body.retro #companies button[aria-current=true]:before{content:'▶ ';color:#ff267b}
body.retro :is(section,.compact-controls,.popover-body,dialog){background:#050516;border:6px double #3159ff;box-shadow:0 0 0 3px #000,0 0 16px #224aff55;color:#fff}
body.retro section{position:relative;padding-top:28px}
body.retro h2{color:#fff400;text-transform:uppercase;font-weight:900;font-size:23px;text-shadow:2px 2px #ff287a;letter-spacing:1px}
body.retro section>h2:before{content:'◆ ';color:#58ffff;text-shadow:2px 2px #2454ff}
body.retro .metrics{gap:20px;padding:18px 4px 30px;border-bottom:6px dotted #ffe1ae}
body.retro .metric,body.retro .metric:nth-child(n){--ghost:#ff4261;background:#07071c;border:5px double var(--ghost);border-top:5px double var(--ghost);box-shadow:5px 5px #101e68,0 0 15px color-mix(in srgb,var(--ghost) 20%,transparent);position:relative;padding:50px 16px 24px}
body.retro .metric:nth-child(2){--ghost:#ff9cdb}body.retro .metric:nth-child(3){--ghost:#4dffff}body.retro .metric:nth-child(4){--ghost:#ffad4b}
body.retro .metric:before{content:'';position:absolute;top:10px;left:calc(50% - 17px);width:34px;height:30px;background:linear-gradient(90deg,transparent 0 6px,var(--ghost) 6px 28px,transparent 28px) top/100% 6px no-repeat,linear-gradient(var(--ghost),var(--ghost)) 0 6px/100% 20px no-repeat, repeating-linear-gradient(90deg,var(--ghost) 0 7px,transparent 7px 12px) bottom/100% 5px no-repeat}
body.retro .metric:after{content:'';position:absolute;top:20px;left:calc(50% - 10px);width:6px;height:7px;background:#fff;box-shadow:14px 0 #fff,2px 3px #1436ff,16px 3px #1436ff}
body.retro .metric span{color:var(--ghost);font-size:11px;font-weight:900;letter-spacing:1px;text-align:center}
body.retro .metric strong{color:#fff400;font-size:26px;text-shadow:2px 2px #a06700;text-align:center;letter-spacing:-1px}
body.retro button,body.retro #screen .row-actions button{background:#101039;border:2px solid #5478ff;color:#76ffff;box-shadow:3px 3px #020209;font-weight:700}
body.retro :is(#save,#fill-apply,#period-apply){background:#fff400;color:#070718;border:3px outset #fffaa0;box-shadow:4px 4px #ff287d;font-weight:900;text-transform:uppercase}
body.retro button:hover:not(:disabled){background:#fff400;color:#05051b;border-color:#fff;transform:translateY(-1px)}
body.retro :is(.sub,.context,.tiny,.crumb,#status,#screen th>small){color:#aabcf5!important}
body.retro :is(.change-label,.more-summary,.edit-mode){color:#fff400}
body.retro #screen thead th,body.retro #screen thead th:first-child{background:#111451;color:#fff400;border-bottom:4px solid #ff3291;text-transform:uppercase}
body.retro #screen tbody tr:nth-child(odd)>td,body.retro #screen tbody tr:nth-child(odd)>th{background:#050519;color:#fff}
body.retro #screen tbody tr:nth-child(even)>td,body.retro #screen tbody tr:nth-child(even)>th{background:#0e1030;color:#fff}
body.retro #screen td.period-total{background:#18164b!important;color:#fff400;border-right:3px double #4064ff}
body.retro #screen tr.total>td,body.retro #screen tr.total>th{background:#19216b!important;color:#66ffff;border-top:4px double #fff400}
body.retro #screen input.edit,body.retro #screen input[type=number],body.retro #screen select,body.retro dialog input,body.retro dialog select{background:#030311!important;color:#fff98b!important;-webkit-text-fill-color:#fff98b!important;border:2px solid #4a6fff!important;caret-color:#fff400}
body.retro #screen input:disabled,body.retro #screen select:disabled{background:#111333!important;color:#f1f5ff!important;-webkit-text-fill-color:#f1f5ff!important;opacity:1}
body.retro .plot{background:linear-gradient(#3159ff18 2px,transparent 2px),linear-gradient(90deg,#3159ff18 2px,transparent 2px);background-size:36px 36px;border:4px double #244eff}
body.retro .plot polyline{stroke:#fff400;stroke-width:4;filter:drop-shadow(0 0 5px #ffcf0077)}body.retro .plot circle{fill:#fff400;stroke:#050516;stroke-width:2}body.retro .plot text{fill:#62ffff;font-family:'Courier New',monospace}
body.retro .ownership-footer:before{content:'● · · · · · · · · ◆';display:block;color:#fff400;font-size:20px;letter-spacing:2px;border-top:5px double #3159ff;padding-top:16px;margin-bottom:14px;text-shadow:2px 2px #a86f00}
body.retro .ownership-footer:after{content:'CASH QUEST • READY PLAYER ONE';display:block;color:#ff94d3;font-size:10px;margin-top:14px;letter-spacing:1px}
body.retro .compact-controls:before{content:'';width:24px;height:24px;flex:0 0 24px;background:conic-gradient(from 45deg,transparent 0 90deg,#fff400 90deg 360deg);border-radius:50%;filter:drop-shadow(2px 2px 0 #936c00)}
@media(max-width:800px){body.retro>header h1{font-size:22px}body.retro>header h1:after{font-size:8px;letter-spacing:1px}body.retro .compact-controls:before{display:none}}
