:root {
  --navy:#0f1f3d; --navy2:#1a3460; --gold:#c9963a; --gold2:#e8b455;
  --cream:#f7f4ef; --cream2:#ede9e0; --stone:#9e9488; --ink:#1c1a17;
  --green:#2d7a4f; --amber:#b85c00; --purple:#5b3fa0; --sw:15rem;
  --todo-c:#94a3b8; --wip-c:#f59e0b; --review-c:#6366f1; --done-c:#10b981;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{font-size:16px;}
body{font-family:"Source Sans 3",sans-serif;background:var(--cream);color:var(--ink);min-height:100vh;font-size:1rem;line-height:1.5;}
h1,h2,h3,h4{font-family:"Playfair Display",serif;}
a{color:var(--navy2);text-decoration:none;}
a:hover{text-decoration:underline;}

/* LOGIN */
.login-page{background:var(--navy);min-height:100vh;display:flex;align-items:center;justify-content:center;}
.login-box{background:#fff;border-radius:1rem;padding:3rem;width:28rem;box-shadow:0 1.5rem 5rem rgba(0,0,0,.35);}
.login-logo{text-align:center;margin-bottom:2rem;}
.login-badge{display:inline-block;background:var(--navy);color:var(--gold);font-family:"Playfair Display",serif;font-size:0.9rem;letter-spacing:3px;padding:0.4rem 1rem;border-radius:4px;margin-bottom:0.8rem;}
.login-logo h1{font-size:1.8rem;color:var(--navy);}
.login-logo p{font-size:0.85rem;color:var(--stone);margin-top:0.3rem;letter-spacing:1px;}
.fg{margin-bottom:1.2rem;}
.fg label{display:block;font-size:0.8rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--stone);margin-bottom:0.4rem;}
.fg input,.fg select,.fg textarea{width:100%;padding:0.8rem 0.9rem;border:1.5px solid var(--cream2);border-radius:0.5rem;font-family:"Source Sans 3",sans-serif;font-size:1rem;outline:none;transition:border-color .15s;color:var(--ink);}
.fg input:focus,.fg select:focus{border-color:var(--navy2);}
.btn-login{width:100%;padding:0.9rem;background:var(--navy);color:#fff;border:none;border-radius:0.5rem;font-family:"Source Sans 3",sans-serif;font-size:1rem;font-weight:600;cursor:pointer;transition:background .15s;}
.btn-login:hover{background:var(--navy2);}
.login-note{text-align:center;font-size:0.85rem;color:var(--stone);margin-top:1rem;}
.flash-error{background:#fee2e2;color:#991b1b;padding:0.8rem 1rem;border-radius:0.5rem;font-size:0.9rem;margin-bottom:1rem;}
.flash-success{background:#d1fae5;color:#065f46;padding:0.8rem 1rem;border-radius:0.5rem;font-size:0.9rem;margin-bottom:1rem;}

/* SHELL */
.app-shell{display:flex;min-height:100vh;}
.sidebar{width:var(--sw);background:var(--navy);display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;z-index:100;}
.sb-logo{padding:1.3rem 1.2rem 1rem;border-bottom:1px solid rgba(255,255,255,.07);}
.sb-apl{font-size:0.75rem;letter-spacing:3px;color:var(--gold);text-transform:uppercase;margin-bottom:0.2rem;}
.sb-title{font-family:"Playfair Display",serif;font-size:1.05rem;color:#fff;line-height:1.3;}
.sb-nav{flex:1;padding:0.8rem 0;overflow-y:auto;}
.nav-sect{padding:0.7rem 1.2rem 0.3rem;font-size:0.75rem;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,.28);}
.nav-item{display:flex;align-items:center;gap:0.65rem;padding:0.75rem 1.2rem;cursor:pointer;font-size:1rem;color:rgba(255,255,255,.6);transition:all .15s;border-left:3px solid transparent;text-decoration:none;}
.nav-item:hover{color:#fff;background:rgba(255,255,255,.05);text-decoration:none;}
.nav-item.active{color:var(--gold);border-left-color:var(--gold);background:rgba(201,150,58,.08);}
.nav-icon{font-size:1.05rem;width:1.3rem;text-align:center;}
.nav-badge{margin-left:auto;background:var(--gold);color:var(--navy);border-radius:0.6rem;padding:0.15rem 0.55rem;font-size:0.8rem;font-weight:700;}
.sb-user{padding:1rem 1.2rem;border-top:1px solid rgba(255,255,255,.07);display:flex;align-items:center;gap:0.65rem;}
.sb-av{width:2.2rem;height:2.2rem;border-radius:50%;background:var(--navy2);color:var(--gold);font-size:0.9rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.sb-un{font-size:0.9rem;color:#fff;font-weight:600;}
.sb-ur{font-size:0.75rem;color:var(--stone);text-transform:uppercase;letter-spacing:.5px;}
.sb-logout{background:none;border:none;color:rgba(255,255,255,.3);cursor:pointer;font-size:1rem;margin-left:auto;text-decoration:none;}
.sb-logout:hover{color:#fff;}
.main{margin-left:var(--sw);flex:1;display:flex;flex-direction:column;min-height:100vh;overflow-y:auto;}
.topbar{background:#fff;border-bottom:1px solid var(--cream2);height:3.6rem;padding:0 1.8rem;display:flex;align-items:center;gap:0.8rem;position:sticky;top:0;z-index:50;flex-shrink:0;}
.tb-bc{font-size:0.9rem;color:var(--stone);flex:1;}
.tb-bc a{color:var(--navy2);}
.tb-bc b{color:var(--navy);}
.topbar-actions{display:flex;gap:0.5rem;align-items:center;}

/* BUTTONS */
.btn{padding:0.55rem 1rem;border-radius:0.5rem;border:1.5px solid var(--cream2);background:#fff;font-family:"Source Sans 3",sans-serif;font-size:0.9rem;cursor:pointer;color:var(--ink);transition:all .15s;display:inline-flex;align-items:center;gap:0.4rem;text-decoration:none;}
.btn:hover{border-color:var(--navy);color:var(--navy);text-decoration:none;}
.btn.navy{background:var(--navy);color:#fff;border-color:var(--navy);}
.btn.navy:hover{background:var(--navy2);}
.btn.gold{background:var(--gold);color:#fff;border-color:var(--gold);}
.btn.green{background:var(--green);color:#fff;border-color:var(--green);}
.btn.sm{padding:0.4rem 0.8rem;font-size:0.85rem;}
.btn.xs{padding:0.3rem 0.65rem;font-size:0.8rem;}

/* PILLS */
.pill{display:inline-block;padding:0.2rem 0.65rem;border-radius:0.6rem;font-size:0.85rem;font-weight:600;}
.p-done{background:#d1fae5;color:#065f46;}
.p-wip{background:#fef3c7;color:#92400e;}
.p-todo{background:var(--cream2);color:var(--stone);}
.p-review{background:#ede9fe;color:#5b21b6;}
.p-block{background:#fee2e2;color:#991b1b;}
.p-disabled{background:#f1f5f9;color:#94a3b8;}
.p-en{background:#e0f2fe;color:#0369a1;}

/* FILTER BAR */
.filt{padding:0.45rem 1rem;border-radius:1rem;border:1.5px solid var(--cream2);background:#fff;font-family:"Source Sans 3",sans-serif;font-size:0.9rem;cursor:pointer;color:var(--stone);transition:all .15s;text-decoration:none;display:inline-block;}
.filt.active{border-color:var(--navy);background:var(--navy);color:#fff;}
.filt:hover{border-color:var(--navy);text-decoration:none;}
.filter-bar{display:flex;gap:0.5rem;flex-wrap:wrap;align-items:center;margin-bottom:1.3rem;}

/* PAGE CONTENT */
.pg{padding:1.8rem;flex:1;}
.section-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;}
.section-hd h3{font-size:1.4rem;color:var(--navy);}

/* SUMMARY STRIP */
.sum-strip{display:flex;gap:0.9rem;margin-bottom:1.5rem;flex-wrap:wrap;}
.sum-card{background:#fff;border:1px solid var(--cream2);border-radius:0.7rem;padding:1rem 1.3rem;flex:1;min-width:6rem;}
.sum-n{font-family:"Playfair Display",serif;font-size:2rem;color:var(--navy);line-height:1;}
.sum-l{font-size:0.85rem;color:var(--stone);margin-top:0.3rem;text-transform:uppercase;letter-spacing:.5px;}
.sum-card.hl{background:var(--navy);}
.sum-card.hl .sum-n{color:var(--gold);}
.sum-card.hl .sum-l{color:rgba(255,255,255,.4);}

/* MY TASKS */
.task-section-title{font-size:0.85rem;text-transform:uppercase;letter-spacing:1.5px;color:var(--stone);font-weight:600;margin:1.4rem 0 0.8rem;}
.task-card{background:#fff;border:1.5px solid var(--cream2);border-radius:0.75rem;padding:1.2rem 1.3rem;margin-bottom:0.8rem;cursor:pointer;display:flex;align-items:center;gap:1rem;transition:all .15s;border-left:4px solid var(--cream2);text-decoration:none;color:var(--ink);}
.task-card:hover{border-color:var(--navy2);box-shadow:0 3px 14px rgba(15,31,61,.09);transform:translateX(2px);text-decoration:none;}
.task-card.andamento{border-left-color:#f59e0b;}
.task-card.revisao{border-left-color:#6366f1;}
.task-card.afazer{border-left-color:#94a3b8;}
.tc-area-icon{width:2.4rem;height:2.4rem;border-radius:0.5rem;display:flex;align-items:center;justify-content:center;font-size:1.1rem;flex-shrink:0;}
.tc-main{flex:1;}
.tc-task{font-size:1.05rem;font-weight:600;color:var(--navy);margin-bottom:0.2rem;}
.tc-book{font-size:0.9rem;color:var(--stone);}
.tc-book b{color:var(--ink);}
.tc-right{display:flex;flex-direction:column;align-items:flex-end;gap:0.35rem;}
.tc-arrow{font-size:1.15rem;color:var(--stone);}

/* ALL BOOKS */
.book-row{background:#fff;border:1.5px solid var(--cream2);border-radius:0.85rem;margin-bottom:0.9rem;overflow:hidden;transition:border-color .15s;}
.book-row:hover{border-color:#b0b8c8;}
.book-row-head{padding:1.2rem 1.4rem;display:flex;align-items:center;gap:0.9rem;cursor:pointer;text-decoration:none;color:var(--ink);}
.book-row-head:hover{text-decoration:none;}
.br-num{font-size:0.85rem;color:var(--stone);font-weight:600;width:1.8rem;flex-shrink:0;}
.br-cover{width:3rem;height:3rem;object-fit:cover;border-radius:0.5rem;flex-shrink:0;box-shadow:0 1px 3px rgba(0,0,0,.12);}
.br-cover-placeholder{width:3rem;height:3rem;border-radius:0.5rem;background:var(--cream);display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex-shrink:0;}
.br-text{flex:1;}
.br-title{font-size:1.15rem;color:var(--navy);line-height:1.3;font-weight:600;}
.br-author{font-size:0.85rem;color:var(--stone);margin-top:0.2rem;}
.br-langs{display:flex;gap:0.4rem;flex-wrap:wrap;align-items:center;}
.lang-chip{display:inline-flex;align-items:center;gap:0.25rem;padding:0.3rem 0.7rem;border-radius:0.6rem;font-size:0.85rem;font-weight:600;cursor:pointer;transition:all .15s;border:1.5px solid transparent;text-decoration:none;}
.lang-chip.en{background:#e0f2fe;color:#0369a1;border-color:#bae6fd;}
.lang-chip.active-lang{background:#d1fae5;color:#065f46;border-color:#6ee7b7;}
.lang-chip:hover{opacity:.85;text-decoration:none;}

/* BOOK HEADER */
.book-header{background:#fff;border-bottom:1px solid var(--cream2);padding:1.5rem 2rem;flex-shrink:0;}
.bh-top{display:flex;align-items:flex-start;gap:1.4rem;margin-bottom:1.2rem;}
.bh-spine{width:5px;border-radius:3px;background:linear-gradient(180deg,var(--gold),var(--navy2));align-self:stretch;flex-shrink:0;}
.bh-cover{width:5.5rem;height:auto;border-radius:0.5rem;flex-shrink:0;box-shadow:0 2px 8px rgba(0,0,0,.15);object-fit:cover;max-height:8rem;}
.bh-text{flex:1;}
.bh-title{font-family:"Playfair Display",serif;font-size:1.7rem;color:var(--navy);line-height:1.2;margin-bottom:0.3rem;}
.bh-author{font-size:1rem;color:var(--stone);}
.bh-stats{display:flex;gap:1.8rem;margin-top:0.8rem;flex-wrap:wrap;}
.bh-stat-n{font-family:"Playfair Display",serif;font-size:1.5rem;color:var(--navy);line-height:1;}
.bh-stat-l{font-size:0.75rem;color:var(--stone);text-transform:uppercase;letter-spacing:.5px;margin-top:0.2rem;}
.bh-actions{display:flex;gap:0.5rem;align-items:flex-start;flex-shrink:0;}

/* LANG TABS */
.lang-tabs{display:flex;gap:0;border-bottom:2px solid var(--cream2);overflow-x:auto;}
.ltab{padding:0.8rem 1.4rem;font-size:0.95rem;font-weight:600;cursor:pointer;color:var(--stone);border-bottom:2px solid transparent;margin-bottom:-2px;display:flex;align-items:center;gap:0.5rem;white-space:nowrap;transition:all .15s;flex-shrink:0;text-decoration:none;}
.ltab:hover{color:var(--navy);text-decoration:none;}
.ltab.active{color:var(--navy);border-bottom-color:var(--gold);}
.ltab.en-tab{color:#0369a1;}
.ltab.en-tab.active{border-bottom-color:#0369a1;}
.ltab-pct{font-size:0.8rem;padding:0.15rem 0.5rem;border-radius:0.6rem;font-weight:700;}
.ltab.active .ltab-pct{background:var(--navy);color:#fff;}
.ltab.en-tab.active .ltab-pct{background:#0369a1;color:#fff;}
.ltab-pct.ns{background:var(--cream2);color:var(--stone);}
.ltab-add{color:var(--stone);border-style:dashed;}
.ltab-add:hover{color:var(--green);border-bottom-color:var(--green);}

/* BOARD AREA */
.board-area{padding:1.3rem 1.8rem;overflow-x:auto;}
.board-toolbar{display:flex;align-items:center;gap:0.5rem;margin-bottom:1.3rem;flex-wrap:wrap;}
.board-info-bar{font-size:0.9rem;color:var(--stone);margin-left:auto;display:flex;align-items:center;gap:0.75rem;}
.prog-inline{display:flex;align-items:center;gap:0.4rem;}
.prog-bar{width:5rem;height:0.4rem;background:var(--cream2);border-radius:0.2rem;overflow:hidden;}
.prog-fill{height:100%;border-radius:0.2rem;background:linear-gradient(90deg,var(--gold),var(--navy2));}

/* KANBAN */
.kanban{display:grid;gap:1rem;min-width:56rem;}
.kanban.k4{grid-template-columns:repeat(4,1fr);}
.kanban.k5{grid-template-columns:repeat(4,1fr) 18rem;}
.kcol{background:var(--cream);border-radius:0.75rem;overflow:hidden;display:flex;flex-direction:column;}
.kcol.dis-col{background:#f5f6f8;border:2px dashed #d4d9e2;}
.kcol-head{background:#fff;padding:0.8rem 1rem;border-bottom:3px solid;display:flex;align-items:center;gap:0.5rem;flex-shrink:0;}
.kcol.dis-col .kcol-head{background:#f5f6f8;border-bottom-color:#d4d9e2!important;}
.kcol-dot{width:0.65rem;height:0.65rem;border-radius:50%;flex-shrink:0;}
.kcol-label{font-size:1rem;font-weight:700;color:var(--navy);}
.kcol.dis-col .kcol-label{color:#94a3b8;}
.kcol-cnt{margin-left:auto;background:var(--cream2);border-radius:0.6rem;padding:0.15rem 0.6rem;font-size:0.85rem;color:var(--stone);font-weight:600;}
.kcol-body{padding:0.65rem;flex:1;min-height:7rem;}

/* TASK CARDS */
.kcard{background:#fff;border:1.5px solid var(--cream2);border-radius:0.6rem;padding:0.9rem 1rem;margin-bottom:0.65rem;cursor:default;transition:all .2s;}
.kcard:hover{box-shadow:0 3px 12px rgba(15,31,61,.08);border-color:#c5cdd8;}
.kcard-area{font-size:0.8rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase;margin-bottom:0.45rem;display:flex;align-items:center;gap:0.3rem;}
.kcard-area-dot{width:0.5rem;height:0.5rem;border-radius:50%;}
.kcard-title{font-size:1rem;color:var(--ink);line-height:1.45;margin-bottom:0.8rem;font-weight:500;}
.kcard-foot{display:flex;align-items:center;gap:0.45rem;}
.kcard-av{height:1.6rem;border-radius:0.8rem;padding:0 0.6rem;font-size:0.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;cursor:pointer;transition:all .15s;white-space:nowrap;}
.kcard-av.empty{background:none!important;border:1.5px dashed #c5cdd8;color:#c5cdd8;font-size:1rem;width:1.6rem;padding:0;border-radius:50%;}
.kcard-av.empty:hover{border-color:var(--navy);color:var(--navy);}
.kcard-btns{display:flex;gap:0.25rem;margin-left:auto;}
.kb{font-size:0.8rem;padding:0.3rem 0.65rem;border-radius:0.35rem;border:1.5px solid;cursor:pointer;font-family:"Source Sans 3",sans-serif;font-weight:600;transition:all .15s;background:none;}
.kb-back{border-color:var(--cream2);background:#fff;color:var(--stone);}
.kb-back:hover{border-color:var(--stone);}
.kb-fwd{color:#fff;}
.adhoc-badge{font-size:0.75rem;padding:0.15rem 0.45rem;border-radius:0.25rem;background:#fff3e0;color:var(--amber);font-weight:700;border:1px solid #ffe0b2;}

/* DISABLED CARDS */
.dis-card{background:#fff;border:1.5px dashed #d4d9e2;border-radius:0.6rem;padding:0.9rem 1rem;margin-bottom:0.65rem;transition:all .2s;}
.dis-card:hover{border-color:#b0b8c8;}
.dis-card-area{font-size:0.75rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;margin-bottom:0.4rem;color:#b0b8c8;display:flex;align-items:center;gap:0.35rem;}
.dis-card-title{font-size:0.9rem;color:#b0b8c8;line-height:1.45;margin-bottom:0.65rem;}
.btn-enable{padding:0.35rem 0.8rem;border-radius:0.35rem;border:1.5px solid var(--green);background:#fff;color:var(--green);font-size:0.85rem;font-weight:700;cursor:pointer;font-family:"Source Sans 3",sans-serif;transition:all .15s;display:inline-flex;align-items:center;gap:0.3rem;}
.btn-enable:hover{background:var(--green);color:#fff;}

/* ADMIN STATS */
.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0.9rem;margin-bottom:1.5rem;}
.astat{background:#fff;border:1px solid var(--cream2);border-radius:0.7rem;padding:1.2rem 1.4rem;}
.astat.hl{background:var(--navy);}
.astat-n{font-family:"Playfair Display",serif;font-size:2.2rem;color:var(--navy);line-height:1;}
.astat.hl .astat-n{color:var(--gold);}
.astat-l{font-size:0.85rem;color:var(--stone);margin-top:0.35rem;text-transform:uppercase;letter-spacing:.5px;}
.astat.hl .astat-l{color:rgba(255,255,255,.4);}

/* TEAM GRID */
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:0.9rem;margin-bottom:1.5rem;}
.team-card{background:#fff;border:1.5px solid var(--cream2);border-radius:0.75rem;overflow:hidden;}
.tc-head{padding:1rem 1.2rem;display:flex;align-items:center;gap:0.75rem;border-bottom:1px solid var(--cream2);}
.tc-av-big{width:2.6rem;height:2.6rem;border-radius:50%;font-size:1.05rem;font-weight:700;display:flex;align-items:center;justify-content:center;color:var(--gold);flex-shrink:0;}
.tc-name{font-size:1.05rem;font-weight:600;color:var(--navy);}
.tc-meta{font-size:0.85rem;color:var(--stone);margin-top:0.1rem;}
.tc-task-row{display:flex;align-items:center;gap:0.65rem;padding:0.7rem 1.2rem;border-bottom:1px solid var(--cream2);}
.tc-task-row:last-child{border-bottom:none;}
.tc-area-dot{width:0.5rem;height:0.5rem;border-radius:50%;flex-shrink:0;}
.tc-task-name{font-size:0.9rem;color:var(--ink);flex:1;}
.tc-task-book{font-size:0.85rem;color:var(--stone);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}

/* UNASSIGNED PANEL */
.unassigned-panel{background:#fff;border:1.5px solid var(--cream2);border-radius:0.75rem;overflow:hidden;margin-bottom:1.5rem;}
.up-head{padding:0.9rem 1.3rem;border-bottom:1px solid var(--cream2);display:flex;align-items:center;justify-content:space-between;}
.up-head h3{font-size:1.15rem;color:var(--navy);display:flex;align-items:center;gap:0.5rem;}
.up-row{display:flex;align-items:center;gap:0.8rem;padding:0.8rem 1.3rem;border-bottom:1px solid var(--cream2);}
.up-row:last-child{border-bottom:none;}
.up-info{flex:1;}
.up-task{font-size:1rem;font-weight:600;color:var(--navy);}
.up-book{font-size:0.85rem;color:var(--stone);margin-top:0.15rem;}

/* ACTIVITY FEED */
.activity-feed{background:#fff;border:1px solid var(--cream2);border-radius:0.75rem;overflow:hidden;}
.af-head{padding:0.9rem 1.3rem;border-bottom:1px solid var(--cream2);}
.af-head h3{font-size:1.15rem;color:var(--navy);}
.af-item{padding:0.8rem 1.3rem;border-bottom:1px solid var(--cream2);font-size:0.9rem;display:flex;align-items:flex-start;gap:0.7rem;}
.af-item:last-child{border-bottom:none;}
.af-av{width:1.8rem;height:1.8rem;border-radius:50%;font-size:0.8rem;font-weight:700;display:flex;align-items:center;justify-content:center;color:var(--gold);flex-shrink:0;margin-top:0.05rem;}
.af-text{flex:1;line-height:1.5;color:var(--stone);}
.af-text b{color:var(--navy);}
.af-time{font-size:0.8rem;color:var(--stone);margin-top:0.15rem;}

/* MODALS */
.modal-bg{position:fixed;inset:0;background:rgba(15,31,61,.45);z-index:500;display:none;align-items:center;justify-content:center;}
.modal-bg.open{display:flex;}
.modal{background:#fff;border-radius:0.85rem;padding:2rem;width:30rem;max-width:95vw;box-shadow:0 1.5rem 5rem rgba(0,0,0,.2);}
.modal h3{font-size:1.35rem;color:var(--navy);margin-bottom:0.3rem;}
.modal-sub{font-size:0.9rem;color:var(--stone);margin-bottom:1.5rem;}
.form-row{margin-bottom:1.2rem;}
.form-row label{display:block;font-size:0.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--stone);margin-bottom:0.4rem;}
.form-row input,.form-row select,.form-row textarea{width:100%;padding:0.8rem 0.9rem;border:1.5px solid var(--cream2);border-radius:0.5rem;font-family:"Source Sans 3",sans-serif;font-size:0.95rem;outline:none;transition:border-color .15s;color:var(--ink);}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--navy2);}
.form-row textarea{resize:vertical;min-height:4.5rem;}
.modal-acts{display:flex;gap:0.5rem;justify-content:flex-end;margin-top:1.4rem;}
.asgn-item{display:flex;align-items:center;gap:0.8rem;padding:0.75rem;border-radius:0.5rem;cursor:pointer;transition:background .1s;}
.asgn-item:hover{background:var(--cream);}
.asgn-item.sel{background:#e8eeff;}
.asgn-av{width:2.4rem;height:2.4rem;border-radius:50%;font-size:0.95rem;font-weight:700;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;}
.asgn-name{font-size:0.95rem;font-weight:600;color:var(--navy);flex:1;}
.asgn-load{font-size:0.85rem;color:var(--stone);}
.asgn-chk{width:1.4rem;height:1.4rem;border-radius:0.3rem;border:1.5px solid var(--stone);display:flex;align-items:center;justify-content:center;font-size:0.85rem;}
.asgn-item.sel .asgn-chk{background:var(--navy);border-color:var(--navy);color:#fff;}

/* LANG SELECTOR GRID */
.lang-grid-sel{display:grid;grid-template-columns:repeat(4,1fr);gap:0.5rem;max-height:15rem;overflow-y:auto;margin-bottom:0.3rem;}
.ls-item{padding:0.7rem;border:1.5px solid var(--cream2);border-radius:0.55rem;text-align:center;cursor:pointer;transition:all .15s;}
.ls-item:hover{border-color:var(--navy2);}
.ls-item.sel{border-color:var(--navy);background:var(--navy);color:#fff;}
.ls-flag{font-size:1.4rem;margin-bottom:0.2rem;}
.ls-name{font-size:0.75rem;font-weight:600;}

/* TOAST */
.toast{position:fixed;bottom:1.5rem;right:1.5rem;background:var(--navy);color:#fff;padding:0.9rem 1.4rem;border-radius:0.6rem;font-size:0.95rem;display:none;align-items:center;gap:0.5rem;z-index:600;box-shadow:0 0.5rem 1.5rem rgba(0,0,0,.2);transition:opacity .3s;}
.toast.show{display:flex;}

/* EMPTY STATE */
.empty-col{text-align:center;padding:1.8rem 0.9rem;color:var(--stone);}
.empty-col .ei{font-size:1.8rem;margin-bottom:0.5rem;}
.empty-col p{font-size:0.85rem;line-height:1.5;}

/* SEARCH */
.search-box{padding:0.7rem 0.9rem;border:1.5px solid var(--cream2);border-radius:0.5rem;font-family:"Source Sans 3",sans-serif;font-size:0.95rem;width:16rem;outline:none;transition:border-color .15s;}
.search-box:focus{border-color:var(--navy2);}

/* RESPONSIVE */
@media(max-width:50rem){
  :root{--sw:0;}
  .sidebar{display:none;}
  .kanban{min-width:auto;}
  .kanban.k5{grid-template-columns:1fr;}
  .kanban.k4{grid-template-columns:1fr;}
  .admin-stats{grid-template-columns:repeat(2,1fr);}
}

/* Language search in derive modal */
.lang-search-input{width:100%;padding:0.6rem 1rem;border:1.5px solid var(--cream2);border-radius:1.2rem;font-family:inherit;font-size:0.95rem;outline:none;margin-bottom:0.8rem;background:#fff;}
.lang-search-input:focus{border-color:var(--navy);box-shadow:0 0 0 2px rgba(15,31,61,.1);}

/* SETTINGS PAGE */
.settings-stats{display:flex;gap:1.5rem;margin-bottom:2rem;}
.ss-item{background:#fff;border:1.5px solid var(--cream2);border-radius:0.75rem;padding:1rem 1.5rem;display:flex;align-items:center;gap:0.8rem;}
.ss-n{font-family:"Playfair Display",serif;font-size:1.8rem;color:var(--navy);line-height:1;}
.ss-l{font-size:0.85rem;color:var(--stone);text-transform:uppercase;letter-spacing:.5px;}
.settings-section{background:#fff;border:1.5px solid var(--cream2);border-radius:0.85rem;padding:1.5rem;margin-bottom:1.5rem;}
.ss-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.8rem;}
.ss-header h2{font-family:"Playfair Display",serif;font-size:1.3rem;color:var(--navy);margin:0;}
.ss-hint{font-size:0.85rem;color:var(--stone);margin-bottom:1rem;line-height:1.5;}
.area-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(12rem,1fr));gap:0.75rem;}
.area-card{display:flex;align-items:center;gap:0.6rem;background:var(--cream);border-radius:0.6rem;padding:0.6rem 0.9rem;position:relative;}
.ac-color{width:2rem;height:2rem;border-radius:0.4rem;display:flex;align-items:center;justify-content:center;font-size:1rem;color:#fff;flex-shrink:0;}
.ac-name{font-weight:600;font-size:0.95rem;color:var(--ink);flex:1;}
.ac-edit{background:none;border:none;cursor:pointer;font-size:1rem;color:var(--stone);padding:0.2rem;opacity:0.5;transition:opacity .15s;}
.ac-edit:hover{opacity:1;}
.template-list{display:flex;flex-direction:column;gap:0.35rem;}
.tpl-row{display:flex;align-items:center;gap:0.6rem;padding:0.55rem 0.8rem;background:var(--cream);border-radius:0.5rem;transition:background .1s;}
.tpl-row:hover{background:#e8e0d4;}
.tpl-grip{cursor:grab;color:var(--stone);font-size:1rem;opacity:0.4;flex-shrink:0;}
.tpl-area-dot{width:0.55rem;height:0.55rem;border-radius:50%;flex-shrink:0;}
.tpl-area{font-size:0.8rem;color:var(--stone);width:8rem;flex-shrink:0;font-weight:600;text-transform:uppercase;letter-spacing:.3px;}
.tpl-title{flex:1;font-size:0.95rem;color:var(--ink);}
.tpl-enabled{font-size:0.7rem;font-weight:700;padding:0.2rem 0.5rem;border-radius:0.3rem;cursor:pointer;transition:all .15s;flex-shrink:0;}
.tpl-enabled.on{background:#d1fae5;color:#065f46;}
.tpl-enabled.off{background:#f1f5f9;color:#94a3b8;}
.tpl-edit,.tpl-del{background:none;border:none;cursor:pointer;font-size:1rem;color:var(--stone);padding:0.2rem;opacity:0.4;transition:opacity .15s;flex-shrink:0;}
.tpl-edit:hover,.tpl-del:hover{opacity:1;}
.tpl-del:hover{color:#dc2626;}
.btn{padding:0.5rem 1.2rem;border-radius:0.5rem;font-weight:600;font-size:0.9rem;cursor:pointer;border:none;transition:all .15s;white-space:nowrap;}
.btn.navy{background:var(--navy);color:#fff;}.btn.navy:hover{opacity:.85;}
.btn.gold{background:var(--gold);color:#fff;}.btn.gold:hover{opacity:.85;}
.btn.stone{background:var(--cream2);color:var(--ink);}.btn.stone:hover{background:#d1d5db;}

/* Language switcher */
.lang-switcher{display:flex;align-items:center;gap:2px;margin-left:4px;}
.lang-btn{width:32px;height:32px;border-radius:6px;border:1.5px solid var(--cream2);background:#fff;cursor:pointer;font-family:"Source Sans 3",sans-serif;font-size:11px;font-weight:700;color:var(--stone);display:flex;align-items:center;justify-content:center;text-decoration:none;transition:all .15s;}
.lang-btn:hover{border-color:var(--navy);color:var(--navy);text-decoration:none;}
.lang-btn.active{background:var(--navy);color:#fff;border-color:var(--navy);}
