/* /public/assets/littoral/socle.css */
:root{color-scheme:light;--bg:#f4f5f7;--surface:#fff;--ink:#26303d;--muted:#667384;--line:#e1e5eb;--red:#d92531;--tint:#fcedef;--green:#246c43;--green-bg:#e8f5ed;--orange:#9b6119;--orange-bg:#fff1de}html[data-theme=dark]{color-scheme:dark;--bg:#15181e;--surface:#20252e;--ink:#e8edf5;--muted:#aeb8c6;--line:#35404e;--red:#ef626c;--tint:#422a31;--green:#a4dfbc;--green-bg:#223e30;--orange:#f2cb91;--orange-bg:#45351f}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:13px/1.45 system-ui,-apple-system,Segoe UI,Arial}a{color:var(--red)}button,input,select{font:inherit;color:inherit}button,.button{min-height:34px;padding:7px 12px;border:1px solid var(--line);border-radius:999px;background:var(--surface);display:inline-flex;gap:7px;align-items:center;justify-content:center;text-decoration:none;color:var(--ink);cursor:pointer}button:hover,.button:hover{background:var(--tint)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--red);outline-offset:3px}.primary{background:var(--red);border-color:var(--red);color:#fff}.primary:hover{background:var(--red);filter:brightness(.94)}.danger{color:var(--red)}svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}.icon{width:34px;height:34px;min-height:34px;padding:7px;border-radius:50%;flex:none}.topbar{min-height:72px;padding:12px 22px;display:flex;align-items:center;gap:20px;background:var(--surface);border-bottom:1px solid var(--line)}.brand{font-size:19px;font-weight:750;letter-spacing:-.6px;color:var(--ink);text-decoration:none;width:200px;white-space:nowrap}.brand span{color:var(--red)}.top-actions{margin-left:auto;display:flex;align-items:center;gap:7px}.top-actions form{display:flex}.top-actions button,.top-actions .button{height:42px}.top-actions .icon{width:42px}.navbar-search{display:flex;align-items:center;flex:1;background:var(--bg);border:1px solid var(--line);border-radius:999px;padding:3px 5px 3px 12px}.navbar-search input{border:0;background:none;padding:5px}.app-shell{display:grid;grid-template-columns:220px minmax(0,1fr);min-height:calc(100vh - 72px)}.guest-shell{display:block}.sidebar{padding:15px 12px;background:var(--surface);border-right:1px solid var(--line)}.sidebar a{display:flex;gap:10px;align-items:center;padding:10px 12px;margin:2px 0;border-radius:999px;text-decoration:none;color:var(--ink)}.sidebar .active{background:var(--tint);color:var(--red)}main{padding:18px 22px;min-width:0;max-width:1500px;width:100%;margin:0 auto}.guest-shell main{max-width:650px;padding-top:32px}.pagebar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;font-weight:600}.panel{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin-bottom:12px;overflow:hidden}.auth-panel{max-width:500px}.content{padding:16px}form.content>button,form.content>.actions{margin-top:12px}label{display:grid;gap:5px;margin-bottom:10px;font-size:12px}input,select{width:100%;padding:9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);min-width:0}input[readonly]{background:var(--bg)}input[type=checkbox]{width:17px;height:17px;accent-color:var(--red)}.password-field{display:flex;align-items:center;gap:6px;margin-bottom:10px}.password-field input{flex:1}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 16px}.actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.full-width{width:100%}.muted,.sub{font-size:12px;color:var(--muted)}.sub{display:block;font-size:11px}.label{font-size:12px;color:var(--muted);margin-bottom:6px}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;background:var(--bg);border:1px solid var(--line);font-size:11px}.green{background:var(--green-bg);color:var(--green);border-color:transparent}.orange{background:var(--orange-bg);color:var(--orange);border-color:transparent}.notice{border-left:3px solid var(--red);padding:9px 12px;background:var(--surface);margin-bottom:12px}.success{border-color:var(--green)}.error{color:var(--red)}.notice ul{margin:0;padding-left:18px}.table-scroll{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{height:44px;padding:5px 10px;border-bottom:1px solid var(--line);text-align:left}th{height:36px;color:var(--muted);font-weight:500;white-space:nowrap}tr:last-child td{border:0}td:last-child{white-space:nowrap}.pagination{padding:10px 12px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.empty{text-align:center;padding:22px;color:var(--muted)}fieldset{border:1px solid var(--line);border-radius:8px;padding:12px;margin:6px 0 12px}legend{font-size:12px}.checks{display:flex;gap:12px;flex-wrap:wrap}.checks label{display:flex;align-items:center;gap:6px;margin:0}.qr{background:white;padding:12px;display:inline-block;max-width:100%;border-radius:8px}.qr svg{width:190px;height:190px;stroke:none;max-width:100%}.qr svg path{stroke:none}.break{overflow-wrap:anywhere}details{margin:12px 0}summary{cursor:pointer;color:var(--muted);padding:5px 0}.recovery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:10px 0;list-style:none}.recovery code{font-size:13px}.spaced{margin-top:14px}.sr-only{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}@media(max-width:900px){.app-shell{grid-template-columns:185px minmax(0,1fr)}.brand{width:165px;font-size:17px}.profile{max-width:170px;overflow:hidden;text-overflow:ellipsis}}@media(max-width:700px){.topbar{padding:10px 12px;gap:8px;flex-wrap:wrap}.brand{flex:1}.navbar-search{order:3;flex-basis:100%}.top-actions .profile{max-width:135px;font-size:12px}.app-shell{display:block}.sidebar{display:flex;overflow:auto;gap:5px;padding:8px;border-right:0;border-bottom:1px solid var(--line)}.sidebar a{white-space:nowrap;margin:0;padding:8px 10px}main{padding:12px}.grid{grid-template-columns:1fr}.content{padding:13px}.guest-shell main{padding-top:18px}.pagebar{font-size:13px}.table-scroll th,.table-scroll td{white-space:nowrap}.recovery{grid-template-columns:1fr}input,select{font-size:16px}}
