/* ffmail workbench: an original panel layout inspired by CyberChef. */
.theme-workbench{--bg:#171d1d;--paper:#202727;--ink:#e9eeeb;--muted:#a5b4aa;--line:#38423e;--green:#c3f37b;--light:#2c382d;color-scheme:dark;background:var(--bg);color:var(--ink);font:13px/1.55 Arial,Helvetica,sans-serif;min-height:100vh;display:flex;flex-direction:column}
.theme-workbench button,.theme-workbench a{transition:background .12s,color .12s}
.theme-workbench button:focus-visible,.theme-workbench a:focus-visible,.theme-workbench input:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.app-header{height:66px;min-height:66px;display:flex;align-items:center;gap:26px;padding:0 24px;border-bottom:1px solid var(--line);background:#171d1d}
.theme-workbench .brand{display:flex;line-height:1}
.theme-workbench .brand .ffmail-logo{width:166px}
.app-caption{font-size:12px;color:var(--muted);border-left:1px solid var(--line);padding-left:25px}
.app-header nav{margin-left:auto;gap:23px}
.app-header nav button,.app-header nav a{color:#bdc9c0;font-size:12px;padding:8px 0}
.app-header nav a:hover,.app-header nav button:hover{color:var(--green)}
.theme-workbench .devbar{background:#253024;color:#c4d7b5;font-size:10px;letter-spacing:.5px;min-height:27px;padding:4px 12px;border-bottom:1px solid #394835}
.workbench{display:grid;grid-template-columns:280px minmax(0,1fr);gap:7px;padding:8px;flex:1;min-height:calc(100vh - 129px)}
.address-panel,.theme-workbench .inbox{background:var(--paper);border:1px solid var(--line);border-radius:3px;min-width:0;overflow:hidden}
.address-panel{display:flex;flex-direction:column}
.panel-title,.theme-workbench .inbox-top{height:49px;min-height:49px;background:#2a3330;display:flex;align-items:center;gap:10px;padding:0 15px;border-bottom:1px solid var(--line)}
.panel-title>svg{width:17px;height:17px;color:var(--green)}
.panel-title h1{font-size:14px;letter-spacing:0;font-weight:600;margin:0;line-height:1.4}
.panel-number{font:10px 'Courier New',monospace;color:#82958a;margin-left:auto;letter-spacing:.5px}
.address-content{padding:22px 17px}
.section-label{font-size:9px;letter-spacing:1px;color:#a9b9ad;font-weight:600}
.theme-workbench .address-field{margin:10px 0 10px;border:1px solid #465249;background:#171e1b;border-radius:3px;display:block;padding:11px 9px}
.theme-workbench .address-field input{font:12px/1.7 'Courier New',monospace;letter-spacing:-.25px;color:#e6efdf;width:100%;padding:0}
.theme-workbench .address-field:focus-within{outline:2px solid var(--green);outline-offset:2px}
.theme-workbench .button{font-size:12px;min-height:39px;border-radius:3px;width:100%;gap:7px;padding:8px 12px}
.theme-workbench .primary{background:var(--green);color:#223018;border-color:var(--green);font-weight:600}
.theme-workbench .primary:hover:not(:disabled){background:#d3ff93}
.theme-workbench .secondary{background:#2c3630;color:#d7e3d0;border:1px solid #4a574a}
.theme-workbench .secondary:hover:not(:disabled){background:#374535}
.theme-workbench .private{color:#a8bba2;font-size:9px;justify-content:center;margin:10px 0 0;gap:5px}
.theme-workbench .private svg{width:12px;height:12px}
.timer-block{margin:27px 0 14px;border-top:1px solid var(--line);padding-top:21px}
.theme-workbench .time{margin-top:13px;gap:10px}
.theme-workbench .time>svg{width:20px;height:20px;color:#a7bd97}
.theme-workbench #countdown{font:38px/1.1 'Courier New',monospace;color:var(--green);letter-spacing:1px}
.theme-workbench #time-caption{display:block;font-size:10px;color:var(--muted);margin:3px 0 0 31px}
.theme-workbench .progress-track{padding:15px 0 19px}
.theme-workbench progress{height:3px;background:#3c4a36;accent-color:var(--green)}
.theme-workbench progress::-webkit-progress-bar{background:#3c4a36}
.theme-workbench progress::-webkit-progress-value{background:var(--green)}
.theme-workbench progress::-moz-progress-bar{background:var(--green)}
.theme-workbench #extend-time,.theme-workbench #new-address{display:flex;align-items:center;justify-content:center;color:#d5e2ce;font-size:12px;padding:8px 12px;gap:7px}
.theme-workbench #new-address{margin-top:12px;background:transparent}
.previous-note{font-size:10px;line-height:1.8;color:var(--muted);margin:12px 2px 0}
.previous-note a{color:#d1e8b9;white-space:nowrap}
.previous-note a:hover{text-decoration:underline}
.theme-workbench .notice{background:#2c3a23;color:#dfefcc;border-color:#4b6038;font-size:11px;line-height:1.7;border-radius:3px;margin:17px 0 0;padding:10px}
.theme-workbench .notice.error{background:#412b25;border-color:#825342;color:#ffcfba}
.privacy-note{display:flex;gap:10px;padding:17px;border-top:1px solid var(--line);margin-top:auto;background:#1c2420}
.privacy-note>svg{color:#a9c58e;width:17px;height:17px;margin-top:2px}
.privacy-note strong{font-size:11px;font-weight:500;color:#c6d7ba}
.privacy-note p{font-size:10px;color:#9eaf9c;line-height:1.8;margin:6px 0 0}
.theme-workbench .inbox{margin:0;display:flex;flex-direction:column;box-shadow:none}
.theme-workbench .inbox-top{justify-content:space-between}
.theme-workbench .inbox-title{gap:9px}
.theme-workbench .inbox-title h2{font-size:14px;font-weight:600}
.theme-workbench .inbox-title>svg{color:var(--green);width:17px;height:17px}
.theme-workbench .inbox-title>span{background:#405332;color:#d4f4b6;font:10px 'Courier New',monospace;border-radius:3px}
.theme-workbench #connection{color:#bdceb1;font-size:10px}
.theme-workbench #connection:before{background:var(--green)}
.theme-workbench #test-mail{color:#cde2b9;border:1px solid #4a5b41;background:#303c2b;border-radius:3px;font-size:10px;padding:5px 9px}
.theme-workbench #refresh-inbox{color:#c0d3b0;padding:5px}
.mail-workspace{flex:1;display:grid;grid-template-columns:minmax(260px,35%) minmax(0,1fr);min-height:460px}
.message-pane{border-right:5px solid #141b17;min-width:0;background:#1c2421}
.reading-pane{min-width:0;background:#202727}
.subpanel-title{display:flex;align-items:center;height:34px;border-bottom:1px solid var(--line);padding:0 14px;background:#242e28;font-size:11px;color:#c1d0b9}
.theme-workbench .list-heading{grid-template-columns:1fr auto;background:#1c2421;color:#83977e;padding:11px 13px;border-bottom:1px solid #303c32;font-size:8px}
.theme-workbench .list-heading span:nth-child(2){display:none}
.theme-workbench .mail-row{position:relative;grid-template-columns:minmax(0,1fr) auto;gap:3px 10px;padding:15px 13px;border-bottom:1px solid #344034;color:#c5d5ba;font-size:11px}
.theme-workbench .mail-row span:nth-child(2){grid-row:2;grid-column:1 / -1;font-weight:400;color:#a7b79e;font-size:11px;margin-top:3px}
.theme-workbench .mail-row time{grid-row:1;grid-column:2;color:#91a585;font-size:9px}
.theme-workbench .mail-row:hover{background:#2d382c}
.theme-workbench .mail-row.selected{background:#34472b;box-shadow:inset 3px 0 var(--green);color:#edfade}
.theme-workbench .empty{min-height:300px;padding:45px 19px}
.theme-workbench .mail-illustration{border:0;background:#273327;color:#a0b88b;width:48px;height:48px;border-radius:8px;transform:none;margin-bottom:18px}
.theme-workbench .mail-illustration svg{width:25px;height:25px}
.theme-workbench .empty h3{font-size:14px;color:#d6e2cf;font-weight:500}
.theme-workbench .empty p{font-size:11px;color:#a4b59a;line-height:1.8}
.theme-workbench .waiting{background:#293626;color:#bed1ad;font-size:9px;border-radius:3px;margin-top:19px}
.theme-workbench .dot{background:#b0d783}
.reader-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;min-height:400px;height:100%;padding:35px 20px}
.reader-placeholder>svg{width:47px;height:47px;stroke-width:1;color:#687f68;margin-bottom:16px}
.reader-placeholder h3{font-size:16px;font-weight:400;color:#becbb8;letter-spacing:-.2px;margin:0 0 8px}
.reader-placeholder p{font-size:11px;color:#91a18a;margin:0}
.text-badge{color:#839b78;border:1px solid #364334;padding:4px 8px;border-radius:3px;font:8px/1.5 'Courier New',monospace;letter-spacing:.7px;margin-top:23px}
.theme-workbench #reader{padding:21px 25px;outline:none}
.theme-workbench #back{font-size:10px;color:#c3e5a4}
.theme-workbench #subject{font-size:22px;color:#edf3e7;line-height:1.5;margin:20px 0 15px;overflow-wrap:anywhere}
.theme-workbench .sender{flex-direction:column;gap:5px;border-color:#3a4739;padding-bottom:17px}
.theme-workbench .sender strong{font-size:11px;color:#bed3ae}
.theme-workbench .sender time{font:10px 'Courier New',monospace;color:#9aaa91}
.theme-workbench #body{font:12px/1.95 'Courier New',monospace;color:#d5dfce;margin:22px 0}
.theme-workbench #attachments{background:#303e2b;color:#c6d9b6;font-size:11px}
.theme-workbench .inbox-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:9px;background:#242e28;border-top:1px solid var(--line);color:#aabb9f;font-size:9px;padding:9px 13px;min-height:34px}
.inbox-bottom>span,.mailbox-state{display:flex;align-items:center;gap:6px}
.theme-workbench .inbox-bottom svg{width:11px;height:11px}
.theme-workbench .inbox-bottom .dot{width:4px;height:4px}
.app-footer{display:flex;justify-content:space-between;align-items:center;padding:7px 18px;min-height:35px;border-top:1px solid var(--line);font-size:10px;background:#171d1d;color:#b2c2a7;letter-spacing:0}
.app-footer .footer-caption{font-size:10px;color:#84967d;margin-left:7px}
.app-footer button{font-size:10px;color:#b2c6a3}
.theme-workbench dialog{background:#242e28;color:#ebf2e4;border-color:#4b5d42;border-radius:5px}
.theme-workbench dialog::backdrop{background:#080e0bcc}
.theme-workbench dialog p{color:#bfceb5}
.theme-workbench .dialog-top .eyebrow{color:var(--green)}
.theme-workbench #close-info{color:#cbdfb9}
@media(min-width:901px){.message-pane,.reading-pane{max-height:calc(100vh - 225px);overflow:auto}.reader-placeholder{min-height:100%}}
@media(max-width:1100px) and (min-width:901px){.workbench{grid-template-columns:250px minmax(0,1fr)}.mail-workspace{grid-template-columns:245px minmax(0,1fr)}.app-caption{display:none}.theme-workbench #reader{padding:20px 18px}.theme-workbench #subject{font-size:19px}}
@media(max-width:900px){.workbench{display:block;padding:7px;min-height:0}.address-panel{margin-bottom:7px}.address-content{display:grid;grid-template-columns:1fr 1fr;gap:0 18px;padding:17px}.address-content>.section-label,.address-content>.address-field,.address-content>#copy-address,.address-content>.private{grid-column:1}.timer-block{grid-column:2;grid-row:1 / span 4;margin:0;padding:0 0 0 18px;border:0;border-left:1px solid var(--line)}.theme-workbench #new-address{grid-column:1;margin:15px 0 0}.previous-note{grid-column:2;margin:15px 0 0}.theme-workbench .notice{grid-column:1 / -1}.privacy-note{display:none}.mail-workspace{grid-template-columns:minmax(220px,36%) minmax(0,1fr);min-height:400px}.app-caption{display:none}.theme-workbench #connection{display:flex}.reader-placeholder{min-height:350px}}
@media(max-width:600px){.app-header{height:57px;min-height:57px;padding:0 15px;gap:12px}.theme-workbench .brand .ffmail-logo{width:137px}.app-header nav{gap:12px}.app-header nav button{display:none}.app-header nav a{font-size:11px}.theme-workbench .devbar{font-size:8px;letter-spacing:.1px;min-height:24px}.theme-workbench .devbar>span{font-size:8px;max-width:none}.workbench{padding:6px}.panel-title,.theme-workbench .inbox-top{height:43px;min-height:43px;padding:0 13px}.panel-title h1,.theme-workbench .inbox-title h2{font-size:13px}.address-content{display:block;padding:17px 14px}.theme-workbench .address-field{margin-top:9px}.theme-workbench .address-field input{font-size:13px}.theme-workbench .private{font-size:9px}.timer-block{border-left:0;border-top:1px solid var(--line);padding:17px 0 0;margin:20px 0 13px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:7px 14px}.timer-block .section-label{grid-column:1 / -1}.theme-workbench .time{margin-top:0}.theme-workbench #countdown{font-size:32px}.theme-workbench .time>svg{width:16px;height:16px}.theme-workbench #time-caption{display:none}.timer-block #extend-time{grid-column:2;grid-row:2;font-size:10px;padding:8px 5px}.theme-workbench .progress-track{grid-column:1 / -1;padding:5px 0 0}.theme-workbench #new-address{margin-top:0;min-height:34px;font-size:11px}.previous-note{text-align:center;margin-top:10px;font-size:9px}.mail-workspace{display:block;min-height:0}.message-pane{border-right:0;border-bottom:5px solid #141b17}.theme-workbench .empty{min-height:190px;padding:25px 20px}.theme-workbench .mail-illustration{width:35px;height:35px;margin-bottom:10px}.theme-workbench .waiting{margin-top:13px}.theme-workbench .empty h3{font-size:14px}.reader-placeholder{min-height:230px}.reader-placeholder h3{font-size:15px}.reader-placeholder>svg{width:35px;height:35px;margin-bottom:12px}.text-badge{margin-top:18px}.theme-workbench #reader{padding:18px}.theme-workbench #subject{font-size:20px}.theme-workbench #connection{font-size:8px}.theme-workbench .inbox-controls{gap:8px}.theme-workbench #test-mail{font-size:9px;padding:4px 6px}.theme-workbench .inbox-bottom{font-size:8px;gap:6px}.app-footer{padding:8px 15px}.app-footer .footer-caption{display:none}}
.theme-workbench #extend-time,.theme-workbench #new-address{border:1px solid #4a574a;border-radius:3px;min-height:39px;width:100%;background:#2c3630}
.theme-workbench #extend-time:hover:not(:disabled),.theme-workbench #new-address:hover:not(:disabled){background:#374535}
@media(min-width:901px){.reader-placeholder{height:calc(100% - 34px);min-height:calc(100% - 34px)}}
/* Wider address panel, narrower message list, aggregate service status. */
.workbench{grid-template-columns:420px minmax(0,1fr);min-height:calc(100vh - 134px)}
.mail-workspace{grid-template-columns:240px minmax(0,1fr)}
.usage-bar{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px 13px;min-height:32px;padding:6px 16px;background:#1e2528;border-bottom:1px solid #39413e;color:#aab8bc;font:11px/1.6 'Courier New',monospace;letter-spacing:.15px}
.usage-item,.usage-connection{display:inline-flex;align-items:center;gap:7px}
.usage-bar svg{width:13px;height:13px;color:#b5d98e}
.usage-bar .dot{width:6px;height:6px;background:#b8df83}
.usage-bar .dot.unknown{background:#d8ac54}
.usage-separator{color:#61726c}
@media(min-width:901px){.message-pane,.reading-pane{max-height:calc(100vh - 230px)}}
@media(max-width:1100px) and (min-width:901px){.workbench{grid-template-columns:365px minmax(0,1fr)}.mail-workspace{grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:900px){.workbench{display:block;min-height:0}.mail-workspace{grid-template-columns:minmax(200px,32%) minmax(0,1fr)}}
@media(max-width:600px){.usage-bar{font-size:9px;gap:4px 8px;padding:6px 10px}.usage-bar .usage-separator:nth-of-type(4){display:none}.usage-connection{flex-basis:100%;justify-content:center}.mail-workspace{display:block}}
