*{box-sizing:border-box}body{margin:0;background:#17191c;color:#202225;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;min-height:100svh;display:grid;place-items:center;padding:36px 20px}main{width:100%;max-width:430px}.brand{font-size:49px;letter-spacing:-3px;line-height:1;font-weight:850;color:white;margin:0 0 33px;text-align:center}.brand span{display:block;font-size:11px;letter-spacing:4.7px;color:#ffca28;margin-top:12px;font-weight:500}.card{background:#fff;padding:38px;border-radius:15px;border-top:4px solid #ffca28;box-shadow:0 20px 70px #0003}.eyebrow{font-size:11px;color:#777d86;letter-spacing:1.4px}h1{font-size:29px;letter-spacing:-1px;line-height:1.2;margin:16px 0 10px}p{font-size:14px;color:#73777e;margin:0 0 28px}form{display:grid}label{font-size:14px;font-weight:500;margin-bottom:7px}input{font:inherit;border:1px solid #dce0e5;background:#fafbfc;border-radius:7px;padding:12px;margin-bottom:19px;width:100%;color:#202225}input:focus{outline:2px solid #e3b523;outline-offset:2px}button{font:600 15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;border:0;border-radius:7px;background:#ffca28;min-height:47px;cursor:pointer}button:hover{background:#f4bd15}button:disabled{opacity:.7;cursor:wait}button:focus-visible{outline:3px solid #a77e00;outline-offset:3px}#error{margin:0 0 15px;font-size:13px;color:#a63838;min-height:0}#error:empty{display:none}.foot{margin-top:27px;text-align:center;color:#969aa1;font-size:12px;border-top:1px solid #eee;padding-top:21px}.bottom{display:block;text-align:center;color:#8b8f97;letter-spacing:1.5px;font-size:10px;margin-top:29px}@media(max-width:430px){.card{padding:29px 24px}h1{font-size:27px}}
/* Obsidian glass entry */
:root{color-scheme:dark}body{background:#0a0b0d;background-image:radial-gradient(ellipse at 60% 10%,#41444866,transparent 55%),radial-gradient(ellipse at 10% 95%,#24262b55,transparent 60%);color:#edeef1}.brand{color:#f5f5f6}.brand span{color:#a9adb4}.card{background:linear-gradient(150deg,#ffffff0e,#ffffff02 55%);background-color:#0c0d0fcc;border:1px solid #ffffff22;border-radius:32px;padding:40px;box-shadow:inset 0 1px #ffffff0b,0 30px 90px #0008;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px)}.eyebrow{color:#a0a5ae;font-size:10px}h1{color:#f2f3f5;font-weight:600}p{color:#a4a9b2}label{color:#c5cad3;font-size:13px}input{background:#ffffff04;border:1px solid #ffffff20;border-radius:12px;color:#e8ebf0;box-shadow:inset 0 2px 5px #0003}input:focus{outline:2px solid #d7bc7580;outline-offset:1px;border-color:#c4ad74}button{background:linear-gradient(155deg,#eeeeef,#c1c5cb);color:#101114;border:1px solid #ffffff80;border-radius:30px;box-shadow:inset 0 1px #fff9,0 5px 18px #0004}button:hover{background:linear-gradient(155deg,#fff,#d6d9de)}button:focus-visible{outline:2px solid #e6c66d}#error{color:#efa0ad}.foot{border-color:#ffffff10;color:#9298a3}.bottom{color:#858b96}@media(max-width:430px){.card{padding:30px 25px;border-radius:26px}}

.eyebrow,.bottom{color:#aab1bc}.card p{color:#c2c8d2}.card label{color:#e1e5eb}input{background:#181c21;border-color:#5b626d;color:#fff}.foot{color:#b3bbc7}#error{color:#ff8498}

.brand{width:100%;max-width:350px;margin:0 auto 28px;line-height:0}.brand-logo{display:block;width:100%;height:auto;object-fit:contain}

/* Shared liquid-glass theme. Functional color and compact calendar density stay explicit. */
:root{--ink:#f3f5f8;--muted:#bac3cf;--line:#ffffff1c;--bg:#080a0d;--glass-border:#ffffff26;--glass-shadow:inset 0 1px 0 #ffffff24,inset 1px 0 0 #ffffff09,0 18px 55px #0004;--glass-surface:linear-gradient(135deg,#ffffff12 0%,#ffffff04 48%,#ffffff08 100%);color-scheme:dark}
body{background-color:var(--bg);background-image:radial-gradient(ellipse at 82% -15%,#6d839447 0%,transparent 48%),radial-gradient(ellipse at -12% 48%,#555b7238 0%,transparent 42%),radial-gradient(ellipse at 95% 110%,#4a5e5930 0%,transparent 45%);background-attachment:fixed;color:var(--ink);-webkit-font-smoothing:antialiased}
h1{font-weight:600;letter-spacing:-1.2px}h2,h3{color:#f6f7fa}.subtitle,.note,.stat small,.attention-item p,.project-card p{color:var(--muted)}.eyebrow{color:#a8b5c6;letter-spacing:2px}.page-head{margin-bottom:28px}.text-btn{color:#d6dfeb}.text-btn:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}
.panel,.stat,.column,.today-focus,.card{background:var(--glass-surface),#15191fbd;border:1px solid var(--glass-border);border-radius:24px;box-shadow:var(--glass-shadow);backdrop-filter:blur(22px) saturate(125%);-webkit-backdrop-filter:blur(22px) saturate(125%)}
.stat{border-radius:23px}.stat .value{font-weight:550;letter-spacing:-1.3px;color:#fff}.stat-top{color:#cbd4df}.stat-accent{padding-top:20px;border-top:1px solid #ffffff50;background:linear-gradient(135deg,#ffffff20,#ffffff04 60%),#20262bc4}.column{background:linear-gradient(150deg,#ffffff07,#ffffff02),#11151b9c;padding:18px}.column .panel{backdrop-filter:none;-webkit-backdrop-filter:none}.project-card{border-radius:19px}.empty{color:#aeb9c8}.client-panel .amount{font-weight:500}.scope span,.badge{border-radius:20px;background:#ffffff0b;color:#d8dfeb;border:1px solid #ffffff13}.client-logo{border-radius:12px}.badge.ok{background:#134932;color:#a0f3c1;border-color:#3bb97a66}.badge.red{background:#652137;color:#ffb7c2;border-color:#ff557b66}.badge.warn{background:#4b3c1f;color:#ffdd91}.badge.purple{background:#353345;color:#e3dbff}
#sidebar{background:linear-gradient(145deg,#ffffff15,#ffffff03 50%),#0d1118dc;border:1px solid #ffffff27;box-shadow:var(--glass-shadow);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px)}
#sidebar nav a{border:1px solid transparent;border-radius:15px;color:#bfc9d6;transition:background .18s ease,color .18s ease,border-color .18s ease}#sidebar nav a.active{background:linear-gradient(135deg,#ffffff22,#ffffff0b);border-color:#ffffff32;box-shadow:inset 0 1px #ffffff20,0 5px 16px #0002;color:#fff}#sidebar nav a.active .ico{color:#e8edf5}#sidebar nav a:not(.active):hover{background:#ffffff0b;border-color:#ffffff12;color:#fff}.profile{border-color:#ffffff17}.profile small{color:#b2becc}.profile>b,.avatar,.user-avatar{background:linear-gradient(140deg,#ffffff20,#ffffff04);border:1px solid #ffffff29;box-shadow:inset 0 1px #ffffff22;color:#f5f7fb}
.shell>header{background:linear-gradient(120deg,#ffffff0c,#ffffff03),#10141bab;border:1px solid #ffffff1c;backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px);box-shadow:inset 0 1px #ffffff12;color:#bcc6d3}#crumb{color:#f2f5fa}header i{color:#737f90}
button{border-color:#ffffff2b;background:linear-gradient(155deg,#ffffff12,#ffffff03);color:#e7edf5;border-radius:14px;box-shadow:inset 0 1px #ffffff16,0 3px 8px #0001;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}button:hover{background:linear-gradient(155deg,#ffffff20,#ffffff0b);border-color:#ffffff49;color:#fff}button:active{box-shadow:inset 0 2px 5px #0003}button:disabled{opacity:.45;cursor:not-allowed}button.primary,body:has(#login) button[type=submit]{background:linear-gradient(145deg,#fff,#cbd5df);color:#111720;border:1px solid #ffffffc9;border-radius:30px;box-shadow:inset 0 1px #fff,0 5px 18px #0003;font-weight:650}button.primary:hover,body:has(#login) button[type=submit]:hover{background:linear-gradient(145deg,#fff,#e1e9f2);color:#080c12;border-color:#fff}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #cfdef6;outline-offset:3px}
input,select{color:#f5f7fb;background:#080d1470;border:1px solid #ffffff30;border-radius:13px;box-shadow:inset 0 1px 5px #0002;transition:border-color .15s,background .15s}input:hover,select:hover{border-color:#ffffff55}input:focus,select:focus{background:#151c27;outline:2px solid #c6d6ed7a;border-color:#cbd9ee}input::placeholder{color:#919fb0;opacity:1}label{color:#dae2ed}select option{background:#1a2029;color:#f5f7fb}
.view-switch,.segmented{padding:4px;border-radius:26px;background:#070b125c;border:1px solid #ffffff1c;box-shadow:inset 0 1px 4px #0005}.view-switch button,.segmented button{border-radius:22px;box-shadow:none}.view-switch button.selected,.segmented button.selected{background:linear-gradient(150deg,#ffffff21,#ffffff0d);color:#fff;border-color:#ffffff36;box-shadow:inset 0 1px #ffffff22,0 2px 7px #0003}
.today-focus{background:linear-gradient(125deg,#ffffff12,#ffffff04),#1d222bbb;border-radius:20px;border-color:#ffffff2b}.today-focus h2{color:#f6f7fa}.today-focus p{color:#c1cbd8}.today-client-list button{border-radius:20px;background:#ffffff08;border-color:#ffffff24;color:#f1f4f8}.today-client-list button b{background:#ec3454;color:#fff;box-shadow:0 0 12px #e9364b22}.today-focus.all-clear{border-color:#4dcc9755}
/* The grid stays opaque enough to scan quickly; weekends and today retain their contrast. */
.overview-scroll{background:#12171d;border-radius:19px;border-color:#ffffff2a;box-shadow:inset 0 1px #ffffff12,0 16px 40px #0002;backdrop-filter:none;-webkit-backdrop-filter:none}.overview-calendar thead th,.overview-calendar thead th:first-child{background:#303944;color:#e0e8f1}.overview-calendar th:first-child{background:#1b232e;color:#f4f7fc}.overview-calendar td.weekday,.sheet-calendar td.weekday{background:#252d38}.overview-calendar td.weekend,.sheet-calendar td.weekend{background:#10161e}.overview-calendar thead th.weekend,.sheet-calendar thead th.weekend{background:#1c2430;color:#b8c5d6}.overview-calendar td.today-column,.sheet-calendar td.today-column{background:#423d2b;box-shadow:inset 1px 0 #eed59366,inset -1px 0 #eed59366}.overview-calendar thead th.today-column,.sheet-calendar thead th.today-column{background:#6c5b32;color:#fff4ce}.overview-calendar tbody tr:hover td.weekday{background:#303b49}.overview-calendar tbody tr:hover td.weekend{background:#1e2936}.overview-calendar tbody tr:hover td.today-column{background:#504733}.overview-piece,.piece-chip{border-radius:9px}.pending,.status-key.pending,.overview-piece.pending,.piece-chip.pending{background:linear-gradient(150deg,#ed3b59,#be203e);border-color:#ff7891;color:#fff;box-shadow:inset 0 1px #ffffff2a}.scheduled,.status-key.scheduled,.overview-piece.scheduled,.piece-chip.scheduled,.quick-schedule{background:linear-gradient(150deg,#168e59,#0c653f);border-color:#48d999;color:#fff;box-shadow:inset 0 1px #ffffff29}.quick-schedule{border-radius:11px}.overview-piece.pending:hover,.piece-chip.pending:hover{background:#ee3b5b}.overview-piece.scheduled:hover,.piece-chip.scheduled:hover,.quick-schedule:hover{background:#149661}.overview-add{background:transparent;box-shadow:none}.content-choices button[aria-pressed=true]{background:linear-gradient(140deg,#fff,#cbd6e4);color:#121923;border-color:#fff}
th{background:#ffffff05;color:#bfccdc}td{border-color:#ffffff0e}.section-head{border-bottom-color:#ffffff12}.attention-item{border-color:#ffffff14}.bars{border-color:#ffffff20}.bar{background:linear-gradient(0deg,#6e849f,#d9e6f6);border-radius:8px 8px 0 0}.progress,.income-track{background:#ffffff0a}.progress span,.income-track span{background:#becfe5}
.profile-card{border-radius:26px}.credentials-fields,.profile-save{border-color:#ffffff1b}.user-card-heading{padding-bottom:20px;border-bottom:1px solid #ffffff15}.user-status{background:#ffffff0b;border:1px solid #ffffff16}.user-status.active{background:#174633;color:#9cf0bf;border-color:#4ccb8250}.credentials-fields small,.profile-card .credential-help{color:#b4c0d0}.account-list label,.disable-access{background:#ffffff04;border-color:#ffffff17;border-radius:13px}.account-list label:hover{background:#ffffff09}.account-list label:has(:checked){background:linear-gradient(140deg,#23714966,#164c3566);border-color:#49bd87}.director-permissions{background:#ffffff04;border-color:#ffffff17;border-radius:16px}.password-control button{border-radius:10px;background:#ffffff0c;box-shadow:none}
dialog{background:linear-gradient(135deg,#ffffff16,#ffffff05),#111822ed;border:1px solid #ffffff38;box-shadow:inset 0 1px #ffffff30,0 35px 100px #0009;border-radius:26px;backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px)}dialog::backdrop{background:#03070db0;backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}dialog .section-head{background:#1b2330e8}.form-actions{background:#141c27ed;border-color:#ffffff17}#toast{background:linear-gradient(135deg,#ffffff15,#ffffff04),#15202dea;border:1px solid #ffffff35;border-radius:18px;box-shadow:var(--glass-shadow);color:#fff}footer{color:#a6b3c4;border-color:#ffffff12}
body:has(#login) .card{background:linear-gradient(145deg,#ffffff19,#ffffff04 60%),#121923ad;border:1px solid #ffffff30;border-radius:34px;box-shadow:inset 0 1px #ffffff35,0 35px 90px #0006;padding:36px}body:has(#login) h1{font-size:29px;font-weight:550}body:has(#login) input{min-height:48px;font-size:16px}body:has(#login) .foot{color:#b6c2d2;border-color:#ffffff19}body:has(#login) .bottom{color:#a4b3c7}
@media(min-width:761px){#sidebar{inset:14px auto 14px 14px;width:210px;border-radius:26px;padding:25px 15px;height:calc(100dvh - 28px)}#sidebar .brand{margin:4px 0 27px}.shell>header{margin:14px 24px 0;border-radius:20px;height:62px;padding:0 24px}}
@media(min-width:761px) and (max-width:1150px){#sidebar{width:181px;padding:22px 10px}#sidebar nav a{padding:12px 9px;font-size:13px}.shell>header{margin-left:20px;margin-right:20px}}
@media(max-width:760px){body{background-attachment:scroll}.shell>header{margin:0;border-radius:0;border:0;border-bottom:1px solid #ffffff24;background:#111822ed}.panel,.stat,.column,.today-focus{backdrop-filter:none;-webkit-backdrop-filter:none;background-color:#171d26ed}.panel{border-radius:20px}.today-focus{border-radius:16px}.stat{border-radius:19px}.page-head{margin-bottom:20px}#sidebar{border-radius:0 28px 28px 0;background:linear-gradient(145deg,#ffffff12,#ffffff02),#101720f5;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.menu-toggle{border-radius:14px;background:#ffffff0c}.menu-backdrop{background:#0008}.compact-heading{margin-bottom:12px}.compact-heading .primary{min-height:42px}.overview-scroll{border-radius:16px}.profile-card{border-radius:22px}.user-card-heading{padding-bottom:18px}.column{background:#121a24ce}dialog{border-radius:26px 26px 0 0}.form-actions{background:#141c27fa}body:has(#login) .card{padding:28px 24px;border-radius:28px}body:has(#login) h1{font-size:27px}}
@media(prefers-reduced-transparency:reduce){.panel,.stat,.column,.today-focus,.card,#sidebar,.shell>header,dialog{backdrop-filter:none;-webkit-backdrop-filter:none;background-color:#18202b}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
/* Compact entry from a calendar cell. */
.content-entry{width:460px}.content-entry #fields{gap:18px;padding:18px 22px}.content-entry .entry-context{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;padding-bottom:12px;border-bottom:1px solid #ffffff1c;font-size:12px;line-height:1.5}.entry-context strong{font-size:13px;color:#eef3fa}.entry-context span{color:#bbc8da}.content-entry .content-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:4px}.content-entry .content-choices button{min-height:64px;padding:12px 6px;font-size:16px;font-weight:600;border-radius:16px}.content-entry .content-choices[aria-label="Estado"]{grid-template-columns:1fr 1fr}.content-entry .content-choices[aria-label="Estado"] button{min-height:64px}.content-entry .content-choices[aria-label="Red social"] button{min-height:40px;font-size:13px;padding:8px}.content-entry button[data-choice="Pendiente"][aria-pressed="true"]{background:linear-gradient(145deg,#e63a59,#b9213d);color:white;border-color:#ff8b9e}.content-entry button[data-choice="Programado"][aria-pressed="true"]{background:linear-gradient(145deg,#188c59,#0e643e);color:white;border-color:#61dd9f}.entry-quantity{display:flex;align-items:center;justify-content:space-between;gap:16px}.entry-quantity>label{font-size:13px}.quantity-stepper{display:flex;align-items:center;gap:6px}.quantity-stepper button{width:44px;height:44px;padding:0;font-size:22px}.quantity-stepper input{width:58px;min-height:44px;height:44px;text-align:center;padding:5px;appearance:textfield;-moz-appearance:textfield}.quantity-stepper input::-webkit-inner-spin-button,.quantity-stepper input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.content-entry .delete-content{font-size:12px;min-height:38px}.content-entry .section-head{padding:14px 22px}.content-entry .section-head h2{font-size:17px}.content-entry .form-actions{padding:14px 22px}.content-entry .form-actions button{min-height:48px}@media(max-width:760px){.content-entry{width:100%;max-width:100%}.content-entry #fields{padding:16px 18px;gap:16px}.content-entry .section-head{padding:12px 18px}.content-entry .form-actions{padding:12px 18px max(14px,env(safe-area-inset-bottom))}.content-entry .content-choices button{min-height:64px;font-size:16px}.entry-context span{font-size:12px}}
