:root{--ink:#1b1b18;--paper:#f4f0e7;--paper2:#ded7c7;--red:#bd3827;--lime:#c7e532;--blue:#8eb4c0;--gold:#efbd55;--green:#668c35;--line:#292923;--white:#fffdf7;--sans:Verdana,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box;font-family:var(--sans)}
html,body{height:100%}
body{margin:0;background:#343d3f;color:var(--ink);font:14px/1.45 var(--sans);overflow:hidden;background-image:linear-gradient(115deg,rgba(255,255,255,.04),transparent 35%),radial-gradient(circle at 20% 0,#596669,transparent 40%)}
button{font:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45;filter:grayscale(.8)}
.topbar{height:76px;background:var(--ink);color:var(--white);border-bottom:6px solid var(--red);display:flex;align-items:center;gap:24px;padding:0 25px}
.brand{display:flex;align-items:center;gap:10px;min-width:225px}.brand-symbol{font-size:47px;font-weight:bold;line-height:1;color:var(--lime)}.brand small,.brand strong{display:block}.brand small{font-size:10px;letter-spacing:.15em}.brand strong{font-size:24px;line-height:1}.brand strong span{color:#ef674e}
.clock{border-left:1px solid #666;padding-left:20px;flex:1}.clock strong,.clock span{display:block}.clock strong{font-size:15px;color:var(--lime)}.clock span{font-size:12px;margin-top:2px}
.top-stats{display:flex;gap:7px}.top-stats div{border:1px solid #666;padding:7px 12px;min-width:92px}.top-stats small,.top-stats strong{display:block}.top-stats small{font-size:9px;color:#aaa}.top-stats strong{font-size:14px}
.icon-button{border:1px solid #777;background:#292925;color:#fff;padding:10px 12px;font-weight:bold;font-size:11px}
.end-day-top{background:var(--red);border-color:#ff8d7e;white-space:nowrap}
.app{height:calc(100vh - 130px);width:min(1550px,98vw);margin:12px auto 15px;display:grid;grid-template-columns:310px 1fr;gap:13px}
.odhor-card,.workspace{border:2px solid var(--line);box-shadow:5px 5px #141412;min-height:0}
.odhor-card{background:var(--paper2);display:flex;flex-direction:column;overflow:hidden}.portrait-scene{height:285px;flex:none;background:linear-gradient(#87999d 0 58%,#586568 58%);position:relative;overflow:hidden}.place-kicker{position:absolute;z-index:4;top:12px;left:12px;background:var(--ink);color:#fff;padding:6px 8px;font-size:10px;font-weight:bold}.odhor-image{position:absolute;height:500px;max-width:none;left:50%;top:-24px;transform:translateX(-50%);image-rendering:pixelated;filter:drop-shadow(8px 5px rgba(0,0,0,.25))}.odhor-image.shake{animation:shake .45s}.portrait-scene blockquote{position:absolute;right:9px;bottom:9px;z-index:5;width:62%;margin:0;background:var(--paper);border:2px solid var(--ink);box-shadow:3px 3px var(--ink);padding:9px;font-weight:bold;font-size:12px;transform:rotate(1deg)}
.condition{padding:10px 12px}.condition-row{display:grid;grid-template-columns:60px 1fr 30px;align-items:center;gap:7px;margin-bottom:7px;font-weight:bold}.condition-row>div{height:12px;border:2px solid var(--ink);background:#bbb3a4}.condition-row i{display:block;height:100%;background:var(--lime);transition:.3s}.health-note{background:#ece6d9;border-left:5px solid var(--blue);padding:8px;font-size:11px;font-weight:bold}
.finance-state{margin:0 12px 10px;padding:11px 12px;background:var(--white);color:var(--ink);border:2px solid var(--ink);border-left:7px solid var(--green);box-shadow:3px 3px 0 rgba(0,0,0,.18);font-family:Verdana,"Segoe UI",Arial,sans-serif!important}.finance-state small,.finance-state strong,.finance-state span{display:block!important;font-family:Verdana,"Segoe UI",Arial,sans-serif!important}.finance-state small{font-size:11px;line-height:1.2;color:#666;font-weight:700;letter-spacing:.08em}.finance-state strong{font-size:15px;line-height:1.25;margin:5px 0 6px}.finance-state span{font-size:12px;line-height:1.35;color:#444}.finance-state.warning{border-left-color:var(--gold)}.finance-state.danger{border-left-color:var(--red);background:#fff0eb;color:var(--ink)}
.goal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.goal-card{border:2px solid var(--line);padding:11px;background:#efeade;opacity:.62}.goal-card.done{background:#fffdf7;border-color:var(--ink);box-shadow:3px 3px var(--ink);opacity:1}.goal-card small{display:block;font-size:10px;font-weight:700;letter-spacing:.06em;color:#6b6252}.goal-card.done small{color:var(--green)}.goal-card h3{font-size:13px;margin:4px 0 5px}.goal-card p{font-size:11px;line-height:1.35;margin:0}
.error-fuse{display:block;margin-top:5px;font-size:10px;font-weight:700;letter-spacing:.04em;color:var(--red)}
.crisis-box{margin:0 12px 10px;padding:11px 12px;background:#fff8e3;color:var(--ink);border:2px solid var(--ink);border-left:7px solid var(--gold);box-shadow:3px 3px 0 rgba(0,0,0,.18);font-family:Verdana,"Segoe UI",Arial,sans-serif}.crisis-box[hidden]{display:none}.crisis-box>strong{display:block;font-size:12px;letter-spacing:.06em}.crisis-box>span{display:block;font-size:11px;line-height:1.35;color:#5a4a22;margin:4px 0 8px}.crisis-box button{display:block;width:100%;margin-top:6px;border:2px solid var(--ink);box-shadow:3px 3px var(--ink);background:var(--gold);color:var(--ink);padding:8px 10px;font:900 11px Verdana,"Segoe UI",Arial,sans-serif;cursor:pointer;text-align:left}.crisis-box button:disabled{background:#ded8cc;color:#777;box-shadow:none;cursor:default}
.rather-die-box{margin:0 12px 12px;padding:12px;background:#241d1b;color:#fff;border:3px solid var(--red);box-shadow:4px 4px var(--ink);text-align:center;font-family:Verdana,"Segoe UI",Arial,sans-serif}.rather-die-box[hidden]{display:none}.rather-die-box>strong{display:block;font-size:12px;line-height:1.4}.rather-die{display:block;margin:11px auto 0;border:2px solid var(--ink);box-shadow:3px 3px #000;background:var(--red);color:#fff;padding:9px 16px;font:900 12px Verdana,"Segoe UI",Arial,sans-serif;cursor:pointer}
.mini-log{margin-top:auto;min-height:0;border-top:2px solid var(--ink);background:var(--paper);padding:8px 10px}.mini-log-head{display:flex;justify-content:space-between;align-items:center;font-size:10px}.mini-log-head button{border:0;background:none;font-size:9px}.mini-log #eventLog{margin-top:5px;max-height:80px;overflow:auto}.log-item{padding:4px 0;border-top:1px solid #bbb;font-size:10px}.log-item time{font-weight:bold;color:#666;margin-right:5px}
.workspace{background:var(--paper);display:flex;flex-direction:column;overflow:hidden}.tabs{height:55px;display:flex;gap:3px;background:#2b2b27;padding:7px 7px 0}.tab{border:0;background:#4a4943;color:#eee;padding:0 19px;font-weight:bold;font-size:12px}.tab.active{background:var(--paper);color:var(--ink)}.tab span{display:inline-grid;place-items:center;background:var(--red);color:#fff;border-radius:20px;min-width:20px;height:20px;margin-left:5px;font-size:10px}
.tab-panel{display:none;min-height:0;overflow:auto;padding:18px 20px 20px}.tab-panel.active{display:block}.panel-header{display:flex;justify-content:space-between;align-items:start;gap:20px;border-bottom:2px solid #aaa;padding-bottom:10px;margin-bottom:13px}.panel-header small,.card-heading small{font-size:10px;font-weight:bold;letter-spacing:.12em;color:#666}.panel-header h1{font-size:26px;margin:2px 0;line-height:1.05}.panel-header p{max-width:420px;margin:3px 0;font-size:12px}.hours-card{background:var(--ink);color:#fff;padding:8px 15px;text-align:center;min-width:120px}.hours-card strong,.hours-card span{display:block}.hours-card strong{font-size:25px;color:var(--lime)}.hours-card span{font-size:10px}
.today-grid{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:1fr 1fr;gap:12px}.timeline-card{grid-row:1/3}.timeline-card,.expense-card,.status-card{border:2px solid var(--line);padding:13px;background:#fffdf7}.timeline-card h2,.card-heading h2{font-size:18px;margin:0}.timeline{height:96px;margin:11px 0;background:#ded8cc;border:2px solid var(--ink);display:flex;position:relative;overflow:hidden}.time-block{min-width:38px;border-right:1px solid #777;display:flex;flex-direction:column;justify-content:end;padding:4px;font-size:9px}.time-block.used{background:var(--blue)}.time-block.now{background:var(--lime)}.time-block strong{font-size:9px}.today-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.action{border:2px solid var(--ink);box-shadow:3px 3px var(--ink);padding:11px;text-align:left;background:#ddd}.action strong,.action span{display:block}.action strong{font-size:12px}.action span{font-size:10px;margin-top:3px}.action.rest{background:#d6ac92}.action.admin{background:var(--blue)}.action.girl{background:#e7a9c2}.action.smoke{background:#b6b0a5}.action.jaryn{grid-column:1/3;background:#c9b98f}.action.end{grid-column:1/3;background:#343430;color:#fff}.card-heading{display:flex;align-items:start;justify-content:space-between;gap:10px}.card-heading>strong{font-size:15px;color:var(--red)}.expense-list,.status-list{margin-top:8px}.expense-line,.status-line{display:flex;justify-content:space-between;gap:10px;padding:6px 0;border-top:1px solid #ccc;font-size:11px}.automatic-place{margin-top:8px;background:#292925;color:#fff;padding:9px;font-size:11px}.automatic-place strong{color:var(--lime)}
.court-availability,.vibe-availability{margin:0 0 13px;padding:10px 12px;border:2px solid var(--ink);border-left:8px solid var(--green);background:#eef3df;font-weight:bold;font-size:13px}.court-availability.blocked,.vibe-availability.blocked{border-left-color:var(--red);background:#f8ddd7}.client-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.client-card{border:2px solid var(--ink);background:var(--white);box-shadow:4px 4px var(--ink);padding:14px;display:flex;flex-direction:column;min-height:300px}.client-card.urgent{border-color:var(--red);box-shadow:4px 4px var(--red)}.client-card small{font-size:9px;font-weight:bold;color:#666}.client-card h2{font-size:18px;line-height:1.12;margin:7px 0}.client-card p{font-size:12px}.client-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:auto}.client-meta div{background:#e4ded1;padding:7px}.client-meta span,.client-meta strong{display:block}.client-meta span{font-size:8px}.client-meta strong{font-size:11px}.client-card button{margin-top:10px;border:2px solid var(--ink);background:var(--lime);padding:10px;font-weight:bold}
.primary-button{background:var(--lime);border:2px solid var(--ink);box-shadow:3px 3px var(--ink);padding:10px 13px;font-weight:bold}.explain{background:#e5ded0;border-left:6px solid var(--blue);padding:10px;font-size:12px}.section-title{font-size:15px;margin:13px 0 8px}.section-title span{color:#666}.app-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.empty-state{border:2px dashed #999;padding:18px;text-align:center;color:#666;grid-column:1/-1}.app-card{border:2px solid var(--ink);background:#fff;padding:11px}.app-card h3{font-size:14px;margin:3px 0}.app-card p{font-size:10px;min-height:29px}.progress{height:15px;border:2px solid var(--ink);background:#ccc}.progress i{display:block;height:100%;background:var(--lime)}.app-meta{display:flex;justify-content:space-between;margin:7px 0;font-size:9px}.app-actions{display:flex;gap:5px}.app-actions button{flex:1;border:1px solid var(--ink);padding:7px;font-weight:bold;font-size:10px}.app-actions .vibe{background:var(--blue)}.app-actions .discard{background:#e8cbc3}.portfolio-title{border-top:2px solid #aaa;padding-top:10px}.portfolio{display:flex;gap:8px;overflow:auto}.portfolio-card{min-width:205px;background:#2e2e2a;color:#fff;padding:9px;border-left:5px solid var(--lime)}.portfolio-card h3{font-size:12px;margin:0}.portfolio-card p{font-size:9px;margin:4px 0}.portfolio-card strong{color:var(--lime)}
.krajta-state{background:var(--green);color:#fff;padding:9px 12px;font-weight:bold}.krajta-state.angry{background:var(--red)}.raise-salary,.reconciliation-lunch{display:block;margin-top:7px;width:100%;background:var(--gold)}.reconciliation-lunch{background:var(--blue)}.raise-salary[hidden],.reconciliation-lunch[hidden]{display:none}.krajta-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.krajta-summary div{background:#ddd6c8;border:1px solid #888;padding:9px}.krajta-summary small,.krajta-summary strong{display:block}.krajta-summary small{font-size:8px}.krajta-summary strong{font-size:12px}.krajta-quote{background:#fff;border:2px solid var(--ink);padding:11px;margin:11px 0;font-weight:bold}.error-list{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:250px;overflow:auto}.error-item{border:2px solid var(--red);background:#fff;padding:10px;display:flex;flex-direction:column}.error-item p{font-size:11px;margin:0 0 8px;flex:1}.error-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:auto}.error-item button{background:var(--red);color:#fff;border:0;padding:7px;font-size:10px;font-weight:bold}.error-item button.forgive{background:var(--green)}
.travel-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;align-items:stretch}.travel-card{border:2px solid var(--ink);background:#fff;padding:13px;position:relative;display:flex;flex-direction:column}.travel-card.current{border:4px solid var(--lime)}.travel-card h2{font-size:18px;margin:2px 0}.travel-card p{font-size:10px;min-height:43px}.travel-details{font-size:10px}.travel-details div{display:flex;justify-content:space-between;border-top:1px solid #ccc;padding:5px 0}.travel-card button{width:100%;margin-top:auto;background:var(--gold);border:2px solid var(--ink);padding:9px;font-weight:bold}
.ticker{position:fixed;bottom:0;left:0;right:0;height:27px;background:var(--red);color:#fff;border-top:2px solid var(--ink);overflow:hidden;z-index:20}.ticker span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:12px;padding:3px 12px}
.overlay{position:fixed;inset:0;background:rgba(12,12,10,.82);z-index:50;display:none;place-items:center;padding:20px}.overlay.show{display:grid}.event-modal,.choice-modal,.confirm-modal{width:min(650px,95vw);background:var(--paper);border:4px solid var(--ink);box-shadow:11px 11px var(--red);padding:25px;position:relative}.event-type{display:inline-block;background:var(--red);color:#fff;padding:7px 12px;font-size:18px;font-weight:bold}.event-type.joy{background:var(--lime);color:var(--ink)}.event-type.warning{background:var(--gold);color:var(--ink)}.event-modal h2,.choice-modal h2,.confirm-modal h2{font-size:28px;line-height:1.1;margin:13px 0 8px}.event-modal p,.choice-modal p,.confirm-modal p{font-size:14px}.event-impact{background:#ded7ca;padding:11px;font-weight:bold;margin:13px 0}.event-buttons,.confirm-modal>div{display:flex;gap:8px;justify-content:flex-end}.event-buttons button,.confirm-modal button{border:2px solid var(--ink);padding:10px 14px;font-weight:bold;background:var(--lime)}.choice-list{display:grid;gap:8px;margin-top:15px}.choice{border:2px solid var(--ink);background:#fff;padding:11px;text-align:left}.choice strong,.choice span{display:block}.choice span{font-size:11px;margin-top:4px}.choice.delegate{background:#d7e1e3}.modal-x{position:absolute;right:10px;top:10px;border:0;background:none;font-size:25px}.confirm-modal{width:min(480px,95vw)}.confirm-modal button:first-child{background:#ddd}
.tutorial{position:fixed;z-index:120;left:50%;top:50%;transform:translate(-50%,-50%);width:min(720px,92vw);background:#fff;border:5px solid var(--ink);box-shadow:12px 12px 0 var(--lime),0 0 0 100vmax rgba(12,12,10,.78);padding:26px 28px;display:none;flex-direction:column;gap:20px;align-items:stretch}.tutorial.show{display:flex}.tutorial small,.tutorial strong{display:block}.tutorial small{font-size:12px;color:var(--red);font-weight:bold;letter-spacing:.12em}.tutorial strong{font-size:25px;line-height:1.15;margin-top:5px}.tutorial p{margin:10px 0 0;font-size:15px;line-height:1.5}.tutorial>div:last-child{display:flex;justify-content:flex-end;gap:10px}.tutorial button{border:2px solid var(--ink);padding:11px 16px;font-weight:bold;font-size:13px;background:#ddd}.tutorial button:last-child{background:var(--lime)}
.funeral-screen{position:fixed;inset:0;z-index:300;background:#151713;display:none;overflow:hidden;color:var(--white)}.funeral-screen.show{display:block}.funeral-screen>img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(1.08)}.funeral-vignette{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,9,7,.85),rgba(8,9,7,.1) 65%),linear-gradient(0deg,rgba(8,9,7,.8),transparent 55%);pointer-events:none}.funeral-location{position:absolute;right:22px;top:22px;background:var(--ink);border:3px solid var(--paper);padding:10px 14px;font-size:14px;font-weight:900;letter-spacing:.08em}.funeral-panel{position:absolute;left:4vw;bottom:5vh;width:min(600px,90vw);background:rgba(244,240,231,.95);color:var(--ink);border:5px solid var(--ink);box-shadow:10px 10px var(--red);padding:24px}.funeral-panel small{font-weight:900;color:var(--red);letter-spacing:.1em}.funeral-panel h1{font-size:44px;line-height:1;margin:10px 0}.funeral-panel p{font-size:16px;margin:8px 0 12px}.funeral-panel>strong,.funeral-panel>span{display:block}.funeral-actions{display:flex;gap:10px;margin:17px 0 10px}.funeral-actions button{border:3px solid var(--ink);box-shadow:4px 4px var(--ink);padding:12px 18px;font-weight:900}.funeral-actions button:first-child{background:var(--red);color:#fff;font-size:18px}.funeral-actions button:last-child{background:var(--lime)}#griefCount{font-size:12px;font-weight:bold}
@keyframes shake{20%,60%{transform:translateX(-8px)}40%,80%{transform:translateX(8px)}}
@media(max-width:1050px){body{overflow:auto}.topbar{height:auto;min-height:76px;flex-wrap:wrap;padding:10px}.top-stats{order:3;width:100%}.app{height:auto;display:block;margin-bottom:40px}.odhor-card{margin-bottom:12px}.portrait-scene{height:300px}.mini-log #eventLog{max-height:130px}.workspace{min-height:700px}.tab-panel{overflow:visible}.client-grid,.travel-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.brand{min-width:0}.clock{order:3;width:100%;border:0;padding:0}.top-stats{overflow:auto}.top-stats div{min-width:90px}.icon-button{font-size:10px}.tabs{overflow:auto}.tab{padding:0 12px;min-width:max-content}.today-grid,.client-grid,.app-grid,.travel-grid,.error-list,.goal-grid{display:block}.goal-card{margin-bottom:10px}.timeline-card,.expense-card,.status-card,.client-card,.app-card,.travel-card,.error-item{margin-bottom:11px}.today-actions{display:block}.action{width:100%;margin-bottom:8px}.action.end{grid-column:auto}.krajta-summary{grid-template-columns:1fr 1fr}.panel-header{display:block}.panel-header>p{margin-top:8px}.tutorial{padding:22px 20px}.tutorial.show{display:flex}}

.portfolio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;overflow:visible}.portfolio-card{width:100%;min-width:0}.portfolio-card.broken{border-left-color:var(--red);background:#3d2927}.portfolio-card.broken strong{color:#ffb1a7}
@media(max-width:1050px){.portfolio{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.portfolio{grid-template-columns:1fr}}
#confirmText{white-space:pre-line}
@media(max-width:680px){.funeral-location{right:10px;top:10px;font-size:11px}.funeral-panel{left:5vw;bottom:4vh;padding:17px}.funeral-panel h1{font-size:31px}.funeral-panel p{font-size:14px}.funeral-actions{flex-direction:column}.funeral-actions button{width:100%}}

/* Čitelnost je součást herní mechaniky: žádné mikropísmo v rozhodovacích prvcích. */
.tab{font-size:14px}.panel-header p,.client-card p,.explain{font-size:13px}.action strong,.client-meta strong,.krajta-summary strong{font-size:13px}.action span,.expense-line,.status-line,.automatic-place,.choice span,.error-item p,.travel-card p,.travel-details,.app-card p,.tutorial p{font-size:12px}.client-card small,.panel-header small,.card-heading small,.app-meta,.krajta-summary small,.event-log,.health-note{font-size:11px}.client-card button,.primary-button,.app-actions button,.error-item button,.travel-card button,.event-buttons button,.confirm-modal button{font-size:12px}
