@import url("https://admin.impact-climatik.fr/api/design-tokens.css.php");
@import url("https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700&family=Sora:wght@600;700;800&display=swap");

:root{--graphite:var(--ick-color-graphite,#1e1e1e);--white:var(--ick-color-white,#fff);--turquoise:var(--ick-color-turquoise,#00bfc1);--copper:var(--ick-color-copper,#b87333);--ink:#17211f;--muted:#687572;--surface:#f3f7f5;--line:#dce6e2;--success:#147a55;--warning:#a86b08;--error:#b42318;--radius:22px;--shadow:0 18px 55px rgba(20,42,35,.11)}
*{box-sizing:border-box}html{background:var(--surface);color:var(--ink);font-family:Manrope,Arial,sans-serif}body{margin:0;min-height:100vh;padding-bottom:92px;background:radial-gradient(circle at 15% 0,rgba(0,191,193,.10),transparent 35%),var(--surface)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.topbar{height:72px;padding:max(14px,env(safe-area-inset-top)) 20px 10px;display:flex;align-items:center;justify-content:space-between;background:rgba(243,247,245,.92);backdrop-filter:blur(18px);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(220,230,226,.8)}.brand{display:flex;align-items:center;gap:11px;font-family:Sora,Arial,sans-serif;font-weight:800}.brand img{width:34px;height:34px;object-fit:contain}.connection{font-size:12px;color:var(--muted);display:flex;align-items:center;gap:6px}.connection i{width:8px;height:8px;border-radius:99px;background:var(--success)}.connection.offline i{background:var(--copper)}.shell{width:min(760px,100%);margin:0 auto;padding:22px 18px 40px}.shell-auth{min-height:100vh;display:grid;place-items:center;padding-bottom:20px}.hero{padding:18px 4px 12px}.eyebrow{margin:0 0 8px;color:#008d8f;font-size:12px;font-weight:800;letter-spacing:.13em}.hero h1,.page-heading h1,.auth-card h1{font:800 clamp(29px,8vw,44px)/1.08 Sora,Arial,sans-serif;margin:0 0 10px;letter-spacing:-.035em}.hero p,.page-heading p,.auth-card>p{color:var(--muted);margin:0;line-height:1.6}.action-grid{display:grid;gap:14px;margin:18px 0}.action-card{min-height:158px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white);box-shadow:0 8px 28px rgba(20,42,35,.05);display:flex;flex-direction:column;justify-content:flex-end;transition:.2s transform}.action-card:active{transform:scale(.985)}.action-card strong{font:700 20px Sora,Arial,sans-serif}.action-card small{color:var(--muted);margin-top:6px}.action-icon{width:46px;height:46px;border-radius:15px;background:#e0f7f4;color:#007d7f;display:grid;place-items:center;font-size:27px;margin-bottom:auto}.action-primary{background:var(--graphite);color:var(--white);border-color:var(--graphite)}.action-primary small{color:#c9d3d0}.action-primary .action-icon{background:var(--turquoise);color:var(--graphite)}.status-card{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:18px;overflow:hidden;margin:18px 0}.status-card div{background:var(--white);padding:16px 10px;text-align:center}.status-card span{display:block;color:var(--muted);font-size:11px}.status-card strong{display:block;font:700 24px Sora;margin-top:5px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:78px;padding:7px max(16px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom));display:flex;justify-content:center;gap:min(12vw,70px);background:rgba(255,255,255,.96);border-top:1px solid var(--line);z-index:20}.bottom-nav a{min-width:64px;text-align:center;color:var(--muted);font-size:11px;font-weight:700}.bottom-nav span{display:block;font-size:23px;line-height:32px}.bottom-nav a.active{color:#007d7f}.page-heading{display:flex;gap:14px;align-items:flex-start;margin:8px 0 20px}.page-heading .back{width:40px;height:40px;flex:0 0 auto;border:1px solid var(--line);background:var(--white);border-radius:13px;display:grid;place-items:center;font-size:22px}.page-heading h1{font-size:31px}.terrain-form{display:grid;gap:14px}.form-section{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:19px;display:grid;gap:14px}.form-section h2{font:700 17px Sora;margin:0 0 2px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}label{font-size:13px;font-weight:700;display:grid;gap:7px}input,select,textarea{width:100%;border:1px solid #cbd8d3;border-radius:13px;padding:13px 14px;background:#fbfdfc;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:var(--turquoise);box-shadow:0 0 0 3px rgba(0,191,193,.13)}textarea{resize:vertical}.field-help{font-size:12px;color:var(--muted);margin:-6px 0 0}.check{grid-template-columns:22px 1fr;align-items:flex-start;font-weight:500;line-height:1.45}.check input{width:20px;height:20px;margin:0;accent-color:var(--turquoise)}.button-primary,.button-secondary,.button-small{border:0;border-radius:14px;padding:15px 18px;font-weight:800;text-align:center;cursor:pointer}.button-primary{background:var(--turquoise);color:var(--graphite);box-shadow:0 8px 22px rgba(0,191,193,.22)}.button-secondary{background:transparent;border:1px solid var(--line);color:var(--muted)}.button-small{padding:9px 12px;background:#e1f5f2;color:#007d7f;margin-top:12px}.draft-notice,.flash{padding:13px 15px;border-radius:14px;font-size:13px}.draft-notice{background:#fff7e8;color:#8a5909}.flash{margin-bottom:16px;background:#eaf2ef}.flash-success{background:#e4f5ec;color:#116740}.flash-warning{background:#fff3d8;color:#805400}.flash-error{background:#feeceb;color:var(--error)}.submission-list{display:grid;gap:12px}.submission-card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:17px}.submission-top{display:flex;justify-content:space-between;gap:12px}.submission-top strong,.submission-top small{display:block}.submission-top small,.submission-card>small{color:var(--muted);margin-top:4px}.submission-card p{font-size:14px}.badge{height:max-content;border-radius:99px;padding:6px 9px;font-size:10px;font-weight:800}.badge-queued{background:#fff3d8;color:#805400}.badge-synced{background:#e4f5ec;color:#116740}.badge-error{background:#feeceb;color:var(--error)}.badge-syncing{background:#e3f1fa;color:#1c6392}.error-detail{margin-top:12px;padding:10px;border-radius:10px;background:#fff2f1;color:var(--error);font-size:12px}.empty-state,.coming-soon{text-align:center;background:var(--white);border:1px dashed #bfcfc8;border-radius:var(--radius);padding:38px 22px;color:var(--muted)}.coming-soon img{width:150px;max-width:60%;margin-bottom:18px}.coming-soon h2{font:700 22px Sora;color:var(--ink)}.coming-soon .button-primary{display:inline-block;margin-top:14px}.auth-card{width:min(430px,100%);background:var(--white);border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.auth-logo{width:155px;max-width:55%;margin-bottom:28px}.auth-card h1{font-size:31px}.compact{margin-top:24px}.logout-form{text-align:center;margin-top:28px}.link-button{border:0;background:transparent;color:var(--muted);text-decoration:underline}.auth-card code{font-size:11px;word-break:break-word}.offline-banner{background:#fff3d8;color:#805400}
@media(min-width:640px){.action-grid{grid-template-columns:1fr 1fr}.shell{padding-top:34px}.bottom-nav{left:50%;right:auto;transform:translateX(-50%);width:430px;border:1px solid var(--line);border-bottom:0;border-radius:22px 22px 0 0}}
@media(max-width:430px){.form-row{grid-template-columns:1fr}.auth-card{padding:24px 20px;border-radius:22px}.status-card span{font-size:10px}}
